将一个例如'10.34 a'的值赋给一个数字列。尾部的无用信息将被剥离

来源:互联网 发布:伦桑 萧忆情 知乎 编辑:程序博客网 时间:2024/05/22 01:16

-- INSERT INTO t_inertupdate(a,b,c) VALUES (4,4,5) ON DUPLICATE KEY UPDATE c=c+5;
-- INSERT INTO t_inertupdate(a,b,c) VALUES (5,5,'10.34 a');

插入 5,5,10

在尝试插入的列值中,某些方面可能有问题的数目。在下列任何一个条件下,警告都会
发生。
(1)向一个定义为NOT NULL 的列中插入NULL 值。该列被设置为它的缺省值。
(2)将一个超出列范围的值赋给一个数字列。该值被剪切到该范围内的适当的端点。
(3)将一个例如'10.34 a'的值赋给一个数字列。尾部的无用信息将被剥离,保留数字部分
并将其插入。如果该值根本就不是一个数字,该列将被设置为0。
(4)将一个超出了列最大长度的字符串插入到一个CHAR、VARCHAR、TEXT 或BLOB
列中。该值将被剪切到该列的最大长度。
(5)将一个对列类型不合法的值插入到一个日期或时间列中。


-- ALTER TABLE t_inertupdate  CHANGE c c int AFTER b;

a,c,b  ——》a,b,c


0 0