我错了我继续哆嗦着求助我用print @test1出来的字符串跟原来的字符串做比较,怎么判断都是截断的。。而len(@test1)得到的是字符串的真实长度,又是一万多,我被搞糊涂了,以为是截成了一万多刚才直接判断print出来的字符串,发现是八千!orz!!再一查,原来是print只能打出8千个字符那现在的问题就变成了,怎么print出来超过8千个字符的字符串呢?我现在要做的是从数据库中获取所有字段内容,直接生成insert语句脚本文件,这样把原来的数据库内容删掉,执行我的脚本文件,数据能够全部恢复。可是print出来的东西只有八千,我的insert语句输入的内容就不完整了咋办啊!有大侠知道不?

解决方案 »

  1.   

    这是因为,企业管理器(或者2005的SSMS)的打印文本是有字符限制的,也大概就是8192还是8060,不太记得,所以你会看到所有的字符并未显示。
    包括你查询结果集,如果超过好象是100个,也都会提示有错。如果你一只都是从打印出来的结果去判断的,那你不用担心,你把字符串,生成物理文件(而非打印出来)就行了。
      

  2.   


    谢谢这位大哥的热心相助,果然高人就是不一样啊,我折腾了N久才发现是print语句在折磨我,高人一下子就发现问题所在了>_<..非常感谢,不过我不会生成物理文件学这个又要花时间了。。这只是项目中的一个小问题,我不能再纠缠下去了,还是用先笨笨的去判断字符串长度,八千个八千个地打出来好了再次感谢一下!