我用的是C# 2005和Sql Server 2005 ,现在我要把html文本存入数据库,但因为html文本中可能存在单引号或双引号,但以需要原样保存,该怎么处理?好像用存储过程也有同样的问题,而在asp中有一个addnew再赋值方法可以解决这个问题,不知C#中用什么方法解决?

解决方案 »

  1.   

    设置一个Text或NText类型的参数来传递这个参数就可以了。当然数据库里也要有相应类型的字段来接受它。
      

  2.   

    能讲清楚点吗?数据库字段当然是Text类型,问题用什么方法保存能避开单双引号问题
      

  3.   

    PROCEDURE update_templatecomm
    @field_name varchar(30),
    @template text
    AS
    declare @sql varchar(2000)
    set @sql='update TemplateComm set '+@field_name+'='''+convert(varchar(max),@template)+''' where CommId=''1'''
    print @sql
    exec(@sql)
    GO
    用这样的存储过程也不行,因为还是有引号,有引号引用就会有单双引号问题
      

  4.   

    str.Replace("'","''");  把单引号替换成两个单引号,这样传到数据库里就不会出错了