【发布时间】:2020-02-17 07:26:09
【问题描述】:
我正在尝试使用 liquibase 脚本向 mysql 中插入一个值:
<changeSet author="liquibase" id="6225">
<insert tableName="master">
<column name="id" value="7"/>
<column name="insightname" value="topic_modelling"/>
<column name="insighttype" value="1" valueBoolean="true"/>
</insert>
</changeSet>
但是当我尝试这个时,它给了我错误:
错误:数据截断:行中“insighttype”列的数据太长 1 [失败的SQL:插入到db.master(id, insightname, insighttype) VALUES ('7', 'topic_modelling', '1')]
是因为值是用引号传递的吗?解决办法是什么?
我的 Create table 语句如下所示:
CREATE TABLE ss_insightmaster (
id int(11) NOT NULL AUTO_INCREMENT,
insightname varchar(255) NOT NULL,
enabled tinyint(1) DEFAULT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;
【问题讨论】:
-
您能否加入
SHOW CREATE TABLE db.master以确保我们正确理解这些类型? -
@danblack - 添加了 CREATE TABLE 语句。