请认真的看完下面这两个帖子。问题就可以解决。这个问题从下面的问题中抽出来的。(也就是你要照着这个方法来处理字段名的变量字符串表示)
http://community.csdn.net/Expert/topic/3688/3688782.xml?temp=.1720545下面的这个问题有点长,建议你倒过来看。
http://community.csdn.net/Expert/topic/3687/3687270.xml?temp=.8822138

解决方案 »

  1.   

    lurel(城市陌生人) 的解答我实在看不明白,
      

  2.   

    --楼主是想这样吗? 你老让偶们猜测你的意思 ,好累啊 :)create table test
    (
     id varchar(3),
     txt1 varchar(3),
     txt2 varchar(3),
     txt3 varchar(3)
    )declare @sql nvarchar(4000)
    declare @teststr nvarchar(4000)
    set @teststr='001|aaa|bbb|ccc'
    set @teststr=replace(@teststr,'|',''',''')
    set @sql='insert into test values ('''+@teststr+''')'
    exec(@sql)select * from test
    ------------------------------------------
    id txt1 txt2 txt3
    001 aaa bbb ccc(所影响的行数为 1 行)
      

  3.   

    谢谢 didoleo(冷月无声) 
    感谢你,我试试你的代码,有些内容是bit或date类型的,不能引用引号啊
      

  4.   

    有些内容是bit或date类型的,不能引用引号啊
    这个当然啦,怎么能在bit类型和date上加引号呢,这个时候
    set @sql='insert into test values ('''+@teststr+''')' 
    这句就要稍微改一下就可以了嘛,很好改的.  :)