MySQL在VARCHAR字段中截断0

时间:2010-10-13 17:33:09

标签: mysql

我在MySQL表中有一个VARCHAR字段,如此 -

CREATE TABLE desc(
    `pk` varchar(10) NOT NULL UNIQUE,
    ...
);

pk字段中的值是 - (xx0000001,xx0000002,...)类型。但是当我将这些插入到我的表中时,pk字段中的值会被截断为(xx1,xx2,...)。

如何防止这种情况?

更新:添加INSERT声明

INSERT INTO desc (pk) VALUES ("xx0000001");

3 个答案:

答案 0 :(得分:0)

可能是您正在使用查看值的查看器正在错误地显示信息,因为它试图将该字符串解释为数字,或者mysql可能将您的数字解释为十六进制或奇怪的东西。

如果你这样做会怎样?

INSERT INTO desc (pk) VALUES ("xx0000099"); 

它是以xx99的形式返回的吗?还是其他一些价值?

答案 1 :(得分:0)

看起来你在两个语句中引用了不同的表,text和desc?

答案 2 :(得分:0)

可能在程序逻辑的某处,该值被解释为十六进制或八进制数字?