迁移数据库初始化安装能力
This commit is contained in:
82
install/define/tpl.go
Normal file
82
install/define/tpl.go
Normal file
@ -0,0 +1,82 @@
|
||||
// Package define ...
|
||||
//
|
||||
// Description : define ...
|
||||
//
|
||||
// Author : go_developer@163.com<白茶清欢>
|
||||
//
|
||||
// Date : 2023-09-17 11:48
|
||||
package define
|
||||
|
||||
import "fmt"
|
||||
|
||||
// 占位符定义
|
||||
const (
|
||||
// Symbol 引号占位符
|
||||
Symbol = "{SYMBOL}"
|
||||
// FieldName 表字段名称
|
||||
FieldName = "{FIELD_NAME}"
|
||||
// FieldType 字段类型
|
||||
FieldType = "{FIELD_TYPE}"
|
||||
// FieldUnsigned 字段无符号
|
||||
FieldUnsigned = "{FIELD_UNSIGNED}"
|
||||
// FieldNotNull 字段不为空
|
||||
FieldNotNull = "{FIELD_NOT_NULL}"
|
||||
// FieldAutoIncrement 表字段自增
|
||||
FieldAutoIncrement = "{FIELD_AUTO_INCREMENT}"
|
||||
// FieldDefaultValue 默认值
|
||||
FieldDefaultValue = "{FIELD_DEFAULT_VALUE}"
|
||||
// FieldOnUpdate 字段自动更新
|
||||
FieldOnUpdate = "{FIELD_ON_UPDATE}"
|
||||
// FieldComment 字段注释
|
||||
FieldComment = "{FIELD_COMMENT}"
|
||||
// IndexType 索引类型
|
||||
IndexType = "{INDEX_TYPE}"
|
||||
// IndexName 索引名称
|
||||
IndexName = "{INDEX_NAME}"
|
||||
// IndexFieldList 索引字段列表
|
||||
IndexFieldList = "{INDEX_FIELD_LIST}"
|
||||
// TableName 表名称
|
||||
TableName = "{TABLE_NAME}"
|
||||
// TableFieldList 表字段列表
|
||||
TableFieldList = "{TABLE_FIELD_LIST}"
|
||||
// TableIndexList 表索引列表
|
||||
TableIndexList = "{TABLE_INDEX_LIST}"
|
||||
// TableEngine 数据表存储引擎
|
||||
TableEngine = "{TABLE_ENGINE}"
|
||||
// TableAutoIncrement 表自增起始值
|
||||
TableAutoIncrement = "{TABLE_AUTO_INCREMENT}"
|
||||
// TableDefaultCharset 表默认编码
|
||||
TableDefaultCharset = "{TABLE_DEFAULT_CHARSET}"
|
||||
// TableDefaultCollate 表默认编码集
|
||||
TableDefaultCollate = "{TABLE_DEFAULT_COLLATE}"
|
||||
// TableComment 表注释
|
||||
TableComment = "{TABLE_COMMENT}"
|
||||
)
|
||||
|
||||
// mysql 数据库相关模板
|
||||
var (
|
||||
// MysqlFieldTpl mysql 表字段模板
|
||||
MysqlFieldTpl = fmt.Sprintf("%v %v %v %v %v %v %v %v", FieldName, FieldType, FieldUnsigned, FieldNotNull, FieldAutoIncrement, FieldDefaultValue, FieldOnUpdate, FieldComment)
|
||||
// MysqlTableTpl 创建表sql语句
|
||||
MysqlTableTpl = fmt.Sprintf("CREATE TABLE %v (%v %v) %v %v %v %v %v;", TableName, TableFieldList, TableIndexList, TableEngine, TableAutoIncrement, TableDefaultCharset, TableDefaultCollate, TableComment)
|
||||
)
|
||||
|
||||
const (
|
||||
// TableIndexPrimary 主键索引
|
||||
TableIndexPrimary = "PRIMARY"
|
||||
// TableIndexUnique 唯一索引
|
||||
TableIndexUnique = "UNIQUE"
|
||||
// TableIndexKey key
|
||||
TableIndexKey = "KEY"
|
||||
// TableIndexIndex index
|
||||
TableIndexIndex = "INDEX"
|
||||
)
|
||||
|
||||
const (
|
||||
// TableEngineInnoDB InnoDB 存储引擎
|
||||
TableEngineInnoDB = "InnoDB"
|
||||
// TableCharsetUtf8mb4 utf8mb4编码
|
||||
TableCharsetUtf8mb4 = "utf8mb4"
|
||||
// TableCollateUtf8mb4GeneralCi 字符集编码
|
||||
TableCollateUtf8mb4GeneralCi = "utf8mb4_general_ci"
|
||||
)
|
Reference in New Issue
Block a user