Documentation ¶
Index ¶
- Constants
- func CheckDbms(dbmsName *string, dbms *string) bool
- func CheckPreConditions(dbConfig *config.DB, preConditionsEle *etree.Element) (bool, error)
- func GetAddColumnSql(dbmsName *string, addColumnEle *etree.Element) (string, error)
- func GetColumnTypeKey(columnType *string) string
- func GetCommentSql(dbmsName *string, commentEle *etree.Element) (string, error)
- func GetCommentText(dbmsName *string, commentEle *etree.Element) string
- func GetCreateIndexSql(dbmsName *string, createIndexEle *etree.Element) (string, error)
- func GetCreateTableSql(dbmsName *string, createTableEle *etree.Element) (string, error)
- func GetCreateViewSql(dbmsName *string, createViewEle *etree.Element) (string, error)
- func GetDataType(dbmsName *string, columnType *string) string
- func GetDefaultValueClause(defaultValue *string, ctype *string) string
- func GetDropColumnSql(dbmsName *string, dropColumnEle *etree.Element) (string, error)
- func GetDropDefaultValueSql(dbmsName *string, dbmsVersion *string, dropDefaultValueEle *etree.Element) (string, error)
- func GetDropIndexSql(dbmsName *string, dropIndexEle *etree.Element) (string, error)
- func GetDropTableSql(dbmsName *string, dropTableEle *etree.Element) (string, error)
- func GetDropViewSql(dbmsName *string, dropViewEle *etree.Element) (string, error)
- func GetModifyDataTypeSql(dbmsName *string, dbmsVersion *string, modifyDataTypeEle *etree.Element) (string, error)
- func GetRenameColumnSql(dbmsName *string, dbmsVersion *string, renameColumnEle *etree.Element) (string, error)
- func GetRenameTableSql(dbmsName *string, dbmsVersion *string, renameTableEle *etree.Element) (string, error)
- func GetSql(dbConfig *config.DB, entityElem *etree.Element) (string, error)
- func GetSqlFileSql(dbmsName *string, sqlFileEle *etree.Element) (string, error)
- func GetSqlSql(dbmsName *string, sqlEle *etree.Element) (string, error)
- func HandleRollback(dbConfig *config.DB, rollbackEles []*etree.Element) error
- func SetColumnType(dbmsName *string, columnType *string)
- func SetPropertyValue(dbmsName *string, targetValue *string)
Constants ¶
const ( MySQL = "mysql" TiDB = "tidb" MariaDB = "mariadb" PostgreSQL = "postgres" Kingbase = "kingbase" Dameng = "dm" Oracle = "oracle" SQLite = "sqlite" MsSQLServer = "mssql" )
dbms-name: MySQL, TiDB, MariaDB, PostgreSQL,
Kingbase, Dameng, Oracle, SQLite, MsSQLServer
Variables ¶
This section is empty.
Functions ¶
func CheckDbms ¶
校验当前数据库类型是否满足dbms配置 满足则返回true,可以运行该changeSet或Property dbmsName *string 当前数据库类型 dbms *string changeSet的dbms配置
func CheckPreConditions ¶
检查校验前置条件 <preConditions onFail="MARK_RAN" onError="HALT" onFailMessage="Fail Message", onErrorMessage="Error Message">
<not> <indexExists indexName="idx_test_property_person_name" /> </not>
</preConditions> 返回为(true, nil)时,校验符合条件,执行该changeSet 返回为(false, nil)时,校验不符合条件,根据onFail配置执行 返回为(false, error)时,校验抛出异常,根据onError配置执行
func GetAddColumnSql ¶
<addColumn tableName="sum_user_extend">
<column name="first_login_time" type="varchar(30)" remarks="first login time, yyyy-MM-dd HH:mm:ss" /> <column name="login_count" type="decimal(7)" remarks="login count" />
</addColumn> 获取添加表字段的Entity标签的sql语句 dbmsName *string 驱动名称,例如:mysql addColumnEle *etree.Element 添加表字段的Entity标签
func GetColumnTypeKey ¶
columnType *string 字段类型,例如: varchar(36) varchar(36) --> varchar UUID --> uuid Numeric(10, 3) --> numeric return string 具体类型的小写字母
func GetCommentSql ¶
获取changeSet的注释的sql语句 返回文本格式:/* {comment} */ dbmsName *string 数据库类型名称,例如:mysql commentEle *etree.Element changeSet的注释XML元素
func GetCommentText ¶
获取changeSet的注释文本 dbmsName *string 数据库类型名称,例如:mysql commentEle *etree.Element changeSet的注释XML元素
func GetCreateIndexSql ¶
获取创建索引的Entity标签的sql语句 dbmsName *string 数据库类型名称,例如:mysql createIndexEle *etree.Element 创建索引的Entity标签
func GetCreateTableSql ¶
获取创建表的Entity标签的sql语句 dbmsName *string 数据库类型名称,例如:mysql createTableEle *etree.Element 创建表的Entity标签
func GetCreateViewSql ¶
获取创建视图的Entity标签的sql语句 dbmsName *string 数据库类型名称,例如:mysql createViewEle *etree.Element 创建视图的Entity标签
func GetDataType ¶
获取目标数据类型字符串 dbmsName *string 当前数据库类型 columnType *string 字段类型,例如: varchar(36) return string
func GetDefaultValueClause ¶
获取字段默认值的sql子句
func GetDropColumnSql ¶
获取删除表字段的Entity标签的sql语句 dbmsName *string 数据库类型名称,例如:mysql dropColumnEle *etree.Element 删除表字段的Entity标签
func GetDropDefaultValueSql ¶
func GetDropDefaultValueSql(dbmsName *string, dbmsVersion *string, dropDefaultValueEle *etree.Element) (string, error)
获取删除字段默认值的Entity标签的sql语句 dbmsName *string 数据库类型名称,例如:mysql dbmsVersion *string 数据库系统版本,例如:5 dropDefaultValueEle *etree.Element 删除字段默认值的Entity标签
func GetDropIndexSql ¶
获取删除索引的Entity标签的sql语句 dbmsName *string 数据库类型名称,例如:mysql dropIndexEle *etree.Element 删除索引的Entity标签
func GetDropTableSql ¶
获取删除表的Entity标签的sql语句 dbmsName *string 数据库类型名称,例如:mysql dropTableEle *etree.Element 删除表的Entity标签
func GetDropViewSql ¶
<dropView viewName="v_test_role" dropIfExists="true"/> 获取删除视图的Entity标签的sql语句 dbmsName *string 数据库类型名称,例如:mysql dropViewEle *etree.Element 删除视图的Entity标签
func GetModifyDataTypeSql ¶
func GetModifyDataTypeSql(dbmsName *string, dbmsVersion *string, modifyDataTypeEle *etree.Element) (string, error)
获取变更表字段类型的Entity标签的sql语句 dbmsName *string 数据库类型名称,例如:mysql dbmsVersion *string 数据库系统版本,例如:5 modifyDataTypeEle *etree.Element 变更表字段类型的Entity标签
func GetRenameColumnSql ¶
func GetRenameColumnSql(dbmsName *string, dbmsVersion *string, renameColumnEle *etree.Element) (string, error)
获取重命名表字段的Entity标签的sql语句 dbmsName *string 数据库类型名称,例如:mysql dbmsVersion *string 数据库系统版本,例如:5 renameColumnEle *etree.Element 重命名表字段的Entity标签
func GetRenameTableSql ¶
func GetRenameTableSql(dbmsName *string, dbmsVersion *string, renameTableEle *etree.Element) (string, error)
获取重命名表的Entity标签的sql语句 dbmsName *string 数据库类型名称,例如:mysql dbmsVersion *string 数据库系统版本,例如:5 renameTableEle *etree.Element 重命名表的Entity标签
func GetSql ¶
获取一个changeSet中的一个实体XML元素的sql语句 dbConfig *config.DB yaml配置中的一个db配置 entityElem *etree.Element 一个changeSet中的子实体XML元素,例如<createTable tableName="...">...</createTable> return (string, error) 返回该entityElem翻译后的sql语句
func GetSqlFileSql ¶
获取sqlFile的Entity标签指定的sql文件中的全部sql语句 dbmsName *string 数据库类型名称,例如:mysql sqlFileEle *etree.Element sqlFile的Entity标签 <sqlFile dbms="!sqlite, postgres, !mysql"
path="db/app01/db-app01-01.sql" />
<sqlFile dbms="!sqlite, postgres, kingbase, oracle"
path="classpath:db/app01/db-app01-01.sql" />
<sqlFile dbms="!sqlite, postgres, mysql"
path="/dev/liquigo/db/app01/db-app01-02.sql" />
func GetSqlSql ¶
获取sql的Entity标签的sql语句 dbmsName *string 数据库类型名称,例如:mysql sqlEle *etree.Element sql的Entity标签
func HandleRollback ¶
在changeSet的执行失败后,执行该changeSet的回滚标签 rollbackEles []*etree.Element 回滚标签列表
func SetColumnType ¶
获取目标数据类型字符串 dbmsName *string 当前数据库类型 columnType *string 字段类型,例如: varchar(36) return string
func SetPropertyValue ¶
设置属性替换值,如下是一些示例 <createTable tableName="${tableName}" remarks="test property replace"> <column name="birthdate" type="${date}" remarks="出生日期" /> <column name="${createUser}" type="varchar(36)" defaultValue="${createUser.defaultValue}" /> <constraints primaryKey="true" nullable="false" primaryKeyName="${pk}test_property_replace" /> <constraints unique="true" nullable="false" uniqueConstraintName="${uk}user_login_account" /> <column name="${a}_${b}_${c}" type="varchar(50)" defaultValue="${d}" remarks="multi placer" />
Types ¶
This section is empty.
Source Files ¶
- map_data_type.go
- pre_conditions.go
- rollback.go
- tran_add_column.go
- tran_comment.go
- tran_create_index.go
- tran_create_table.go
- tran_create_view.go
- tran_drop_column.go
- tran_drop_default_value.go
- tran_drop_index.go
- tran_drop_table.go
- tran_drop_view.go
- tran_modify_data_type.go
- tran_rename_column.go
- tran_rename_table.go
- tran_sql.go
- tran_sql_file.go
- translate.go