用Nvarchar吧 ,把商品用","或者";"分割开,如A,B,E

解决方案 »

  1.   

    SQL SERVER2000无此功能,这是对象关系型数据库所特有的,不知SQL SERVER 2005是否支持对自定义对象类型(作为字段类型)
      

  2.   

    能否具体解释一下nvarchar,
    还是我用这种方式存储
    id    A      B    C    D    E
     1    1      0    0    0    0
     2    1      1    0    1    0
     3    1      0    0    0    1
    买的为1,没买的为0,但是如果改超市有上千种,是不是太大了呢?
      

  3.   

    nvarchar就是unicode编码,存储空间大小不固定的字符类型。要不,你用binary数据类型吧。
    然后从低位到高位每一位表示一种货物,0表示没有买,1表示买了。
    这样做有一个小问题就是,binary是用十六进制显示的,
    所以如果你不习惯的话,自己再写一个显示转化的函数,让它以二进制显示吧。顺便提一下,SQLSERVER支持二进制的位运算,如&, |等。