Liquibase generateChangeLog 不包括列长度 (MySQL)
Liquibase generateChangeLog not including column length (MySQL)
我正在使用 Liquibase 的 generateChangeLog 命令如下:
liquibase --driver=com.mysql.jdbc.Driver \
--classpath=$HOME/.m2/repository/mysql/mysql-connector-java/5.1.26/mysql-connector-java-5.1.26.jar \
--changeLogFile=./db.changelog.xml \
--url="jdbc:mysql://localhost:3306/db" \
generateChangeLog
输出 XML 没有所有列的列长度定义的更改日志。
示例:
<changeSet author="purecharger (generated)" id="1461081110463-2">
<createTable tableName="account">
<column name="id" type="BIGINT">
<constraints nullable="false"/>
</column>
...
</createTable>
</changeSet>
列定义(片段):
Create Table: CREATE TABLE `account` (
`id` bigint(20) NOT NULL,
...
为什么变更日志不包括长度,就像这样?
<column name="id" type="BIGINT(20)">
<constraints nullable="false"/>
</column>
在MySQL中,BIGINT指定了space的8个字节,对于从-9223372036854775808到9223372036854775807的整数来说已经足够了。BIGINT(20)并没有真正的意义。 MySQL 慷慨地接受它。
此 MySQL 页面的完整详细信息:https://dev.mysql.com/doc/refman/5.5/en/integer-types.html
我正在使用 Liquibase 的 generateChangeLog 命令如下:
liquibase --driver=com.mysql.jdbc.Driver \
--classpath=$HOME/.m2/repository/mysql/mysql-connector-java/5.1.26/mysql-connector-java-5.1.26.jar \
--changeLogFile=./db.changelog.xml \
--url="jdbc:mysql://localhost:3306/db" \
generateChangeLog
输出 XML 没有所有列的列长度定义的更改日志。
示例:
<changeSet author="purecharger (generated)" id="1461081110463-2">
<createTable tableName="account">
<column name="id" type="BIGINT">
<constraints nullable="false"/>
</column>
...
</createTable>
</changeSet>
列定义(片段):
Create Table: CREATE TABLE `account` (
`id` bigint(20) NOT NULL,
...
为什么变更日志不包括长度,就像这样?
<column name="id" type="BIGINT(20)">
<constraints nullable="false"/>
</column>
在MySQL中,BIGINT指定了space的8个字节,对于从-9223372036854775808到9223372036854775807的整数来说已经足够了。BIGINT(20)并没有真正的意义。 MySQL 慷慨地接受它。
此 MySQL 页面的完整详细信息:https://dev.mysql.com/doc/refman/5.5/en/integer-types.html