translate

package
v0.2.17 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 13, 2022 License: BSD-2-Clause Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
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

func CheckDbms(dbmsName *string, dbms *string) bool

校验当前数据库类型是否满足dbms配置 满足则返回true,可以运行该changeSet或Property dbmsName *string 当前数据库类型 dbms *string changeSet的dbms配置

func CheckPreConditions

func CheckPreConditions(dbConfig *config.DB, preConditionsEle *etree.Element) (bool, error)

检查校验前置条件 <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

func GetAddColumnSql(dbmsName *string, addColumnEle *etree.Element) (string, error)

<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

func GetColumnTypeKey(columnType *string) string

columnType *string 字段类型,例如: varchar(36) varchar(36) --> varchar UUID --> uuid Numeric(10, 3) --> numeric return string 具体类型的小写字母

func GetCommentSql

func GetCommentSql(dbmsName *string, commentEle *etree.Element) (string, error)

获取changeSet的注释的sql语句 返回文本格式:/* {comment} */ dbmsName *string 数据库类型名称,例如:mysql commentEle *etree.Element changeSet的注释XML元素

func GetCommentText

func GetCommentText(dbmsName *string, commentEle *etree.Element) string

获取changeSet的注释文本 dbmsName *string 数据库类型名称,例如:mysql commentEle *etree.Element changeSet的注释XML元素

func GetCreateIndexSql

func GetCreateIndexSql(dbmsName *string, createIndexEle *etree.Element) (string, error)

获取创建索引的Entity标签的sql语句 dbmsName *string 数据库类型名称,例如:mysql createIndexEle *etree.Element 创建索引的Entity标签

func GetCreateTableSql

func GetCreateTableSql(dbmsName *string, createTableEle *etree.Element) (string, error)

获取创建表的Entity标签的sql语句 dbmsName *string 数据库类型名称,例如:mysql createTableEle *etree.Element 创建表的Entity标签

func GetCreateViewSql

func GetCreateViewSql(dbmsName *string, createViewEle *etree.Element) (string, error)

获取创建视图的Entity标签的sql语句 dbmsName *string 数据库类型名称,例如:mysql createViewEle *etree.Element 创建视图的Entity标签

func GetDataType

func GetDataType(dbmsName *string, columnType *string) string

获取目标数据类型字符串 dbmsName *string 当前数据库类型 columnType *string 字段类型,例如: varchar(36) return string

func GetDefaultValueClause

func GetDefaultValueClause(defaultValue *string, ctype *string) string

获取字段默认值的sql子句

func GetDropColumnSql

func GetDropColumnSql(dbmsName *string, dropColumnEle *etree.Element) (string, error)

获取删除表字段的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

func GetDropIndexSql(dbmsName *string, dropIndexEle *etree.Element) (string, error)

获取删除索引的Entity标签的sql语句 dbmsName *string 数据库类型名称,例如:mysql dropIndexEle *etree.Element 删除索引的Entity标签

func GetDropTableSql

func GetDropTableSql(dbmsName *string, dropTableEle *etree.Element) (string, error)

获取删除表的Entity标签的sql语句 dbmsName *string 数据库类型名称,例如:mysql dropTableEle *etree.Element 删除表的Entity标签

func GetDropViewSql

func GetDropViewSql(dbmsName *string, dropViewEle *etree.Element) (string, error)

<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

func GetSql(dbConfig *config.DB, entityElem *etree.Element) (string, error)

获取一个changeSet中的一个实体XML元素的sql语句 dbConfig *config.DB yaml配置中的一个db配置 entityElem *etree.Element 一个changeSet中的子实体XML元素,例如<createTable tableName="...">...</createTable> return (string, error) 返回该entityElem翻译后的sql语句

func GetSqlFileSql

func GetSqlFileSql(dbmsName *string, sqlFileEle *etree.Element) (string, error)

获取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

func GetSqlSql(dbmsName *string, sqlEle *etree.Element) (string, error)

获取sql的Entity标签的sql语句 dbmsName *string 数据库类型名称,例如:mysql sqlEle *etree.Element sql的Entity标签

func HandleRollback

func HandleRollback(dbConfig *config.DB, rollbackEles []*etree.Element) error

在changeSet的执行失败后,执行该changeSet的回滚标签 rollbackEles []*etree.Element 回滚标签列表

func SetColumnType

func SetColumnType(dbmsName *string, columnType *string)

获取目标数据类型字符串 dbmsName *string 当前数据库类型 columnType *string 字段类型,例如: varchar(36) return string

func SetPropertyValue

func SetPropertyValue(dbmsName *string, targetValue *string)

设置属性替换值,如下是一些示例 <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.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL