表A:
(pid int, zhaopian image)为了页面显示的完整性,我在zhaopian字段上添加了默认照片。
现在我想查找zhaopian字段等于默认值的记录

解决方案 »

  1.   

    select * from A where zhaopian is null or zhaopian = ''????
      

  2.   

    select  * from A where zahopian="默认图片名"
      

  3.   

    select * from A where zhaopian = '默认值' 
      

  4.   


    select * from A where zhaopian='默认值'
      

  5.   

    select * from TB where zhaopian = '默认值' 
      

  6.   

    image 类型能直接用等号比较?
      

  7.   


    服务器: 消息 306,级别 16,状态 1,行 1
    不能比较或排序 text、ntext 和 image 数据类型,除非使用 IS NULL 或 LIKE 运算符。
      

  8.   


    Image 字段比较不好做判断.考虑加另一个字段用来存图片url地址或是加一个字段用来标记是否是默认照片.存放默认照片时将该列置为1
    ALTER TABLE TableName ADD IsDefaultPic bit 
    GO
    SELECT * FROM TableName WHERE isDefaultPic =1
      

  9.   


    那要不然就用 LIKE 咯.
    首先你要知道你的默认照片的二进制表示.
    SELECT * FROM TableName WHERE zhaopian LIKE 0x47494638396119001900800000F5F5F5FFFFFF21F9040100....后面这串0x...是你默认照片的二进制值
      

  10.   

    服务器: 消息 306,级别 16,状态 1,行 1
    不能比较或排序 text、ntext 和 image 数据类型,除非使用 IS NULL 或 LIKE 运算符。还是这个错误,郁闷的
      

  11.   

    SELECT * FROM TableName WHERE zhaopian LIKE 0x47494638396119001900800000F5F5F5FFFFFF21F9040100
    用LIKE 也出错?
      

  12.   


    消息 403,级别 16,状态 2,第 1 行
    对数据类型而言运算符无效。运算符为 LIKE,类型为 image。