• 永别了,Text与NText


          曾几何时刚进入这个行业的时候,那时候就是用ASP做网站,对于新闻内容,我们用得最多的就是Text与NText,从SQL97到SQL2000,那时候我一直用它。渐渐的,不再做网站了,一直都是做的信息系统,Text和Ntext用得比较少了。

          随便SQL2005的出现,Nvarchar(max)走进了程序生活。记得刚出来的时候,微软很提倡使用它字段类型,那时候,觉得也无所谓。感觉上一样使用。

          但是今天发生了一件很奇怪的事,我不知道是因为微软的BUG还是它的特性。

          目前设计的一个系统,需要一个字段存放大量的Guid形式的字符串,如“10a9bc89-398b-47c3-b028-44ead644acb4”。

          我们知道Ntext字段类型,在检查的时候比较麻烦,必须这样写CAST(Taker AS NVARCHAR) = '10a9bc89-398b-47c3-b028-44ead644acb4'

          否则会报“数据类型text 和varchar 在equal to 运算符中不兼容”。

          例如SQL文

          

    select * from sprs_T_MESSAGENOTICE where MessageType='1' AND Taker = '10a9bc89-398b-47c3-b028-44ead644acb4'

    这条记录其实是存在的,可是如果Taker是Ntext,它就查不到数据,如果我10a9bc89-398b-47c3-b028-44ead644acb4换成其它字符串,如“1”,它就查出来了

    存放Guid形式的数据,它就是不行!

    也不知道为什么会这样,不知道是不是微软的BUG,还是它的内部特性。咱也不深究了,没办法只能改用Nvarchar(max)了。

  • 相关阅读:
    Jemeter编写脚本(五类常见请求)
    正则表达式-问号的四种用法
    Python正则表达式操作指南(转)
    Python文件和目录操作方法大全(含实例)
    Python os.walk() 方法
    Python文件和流
    Python pip常用指令
    Windows7下配置JMeter安装环境
    postman进行http接口测试
    递归Python文件目录操作
  • 原文地址:https://www.cnblogs.com/wangsu/p/1507054.html
Copyright © 2020-2023  润新知