sql server 2000 中我把一个字段的数据类型设置成varchar(8000),但实际只能存900个字符,为什么?
执行sql脚本如下:
INSERT INTO 测试 (时间,类型,数据) VALUES ('2012-09-26 22:22:23','电压超限','-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,');
注:执行上面语句后可以写入表中。现在的数据列是900个字符,再增加一个就不能存进去数据库的表中了,为什么?
数据 ---类型为 text 也是同样的问题。。
执行sql脚本如下:
INSERT INTO 测试 (时间,类型,数据) VALUES ('2012-09-26 22:22:23','电压超限','-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,-0.123456,');
注:执行上面语句后可以写入表中。现在的数据列是900个字符,再增加一个就不能存进去数据库的表中了,为什么?
数据 ---类型为 text 也是同样的问题。。
调高它
我知道索引是有个900的限制,到底什么原因呢?
我建立好一个表之后,将上面的语句写在 SQL 查询分析器 里面执行的啊
这么确认的。
当text对应的那列如果存900以上个字符时,那里就显示空白,但是其他的列(时间和类型)可以看到
当小于900时可以看到数据存到那里了。