SQL SERER 2000 数据库,里面的数据类型  TEXT 为什么只能存放1024个汉字?
里面应该可以放更多的~ 
在 查询分析器 选项里面修改了一列最大字符数为 8192,
 但最后仍然只能存放1024个汉字~
请指点~

解决方案 »

  1.   

    同意楼上的. varchar 还可以放8000个字符. text 好像是可以放2G
      

  2.   

    你是不是用的存储过程.写成这样了: @Txt text(1024) 啦~ 我原来遇到过,最后一查原来是这定义了长度了.
      

  3.   

    改成varchar型吧。text放的可以很多。但是不好用。
      

  4.   

    1. 确保你存储的没有错, 用下面的语句看存储数据的长度(字节数)
    select datalength(text列) from 表如果只有2048字节, 应该是存储的方法问题, 测试下面的示例
    declare @t table(c text)
    insert @t select replicate(N'中', 8000)
    select datalength(c) from @t看看长度
      

  5.   

    2. 查询证实存储的数据没有错的情况下, 则可能是你设置了取数据的限制
       a. 查询分析器的显示限制, 这个楼主已经查过了, 不用再看
       b. SET TEXTSIZE 的问题, 查询时使用下面的语句看看:
          SET TEXTSIZE 2147483647
          SELECT * FROM tb
      

  6.   

    我测试了zjcxc(邹建)的这条语句
    declare @t table(c text)
    insert @t select replicate(N'中', 8000)
    select datalength(c) from @t我这里显示的结果是8000
      

  7.   

    //在 查询分析器 选项里面修改了一列最大字符数为 8192,
     但最后仍然只能存放1024个汉字~奥我今天下午犯了个弱智问题  也是写入大于900的内容到text字段中  一开始一直以为没写进去  因为直接在sql打开表  看字段 里空白  鼠标放进去 不要编辑   弄了好半天   后来突发奇想  我在查询分析器里  写select * from t where str like '%as%' 一看有结果  才发现其实记录都写进去了  只不过好像超过一定长度 在sql里直接打开表 看记录 该字段是空白  也不要编辑搂主   不知道你的是不是这个错误
      

  8.   

    一般來說,text的儲存量與你的硬盤空間有關系