读书人

使用C#更新资料表的有关问题特殊字元

发布时间: 2013-03-26 09:54:34 作者: rapoo

使用C#更新资料表的问题,特殊字元无法显示
请问我要把一段有\n与"的文字写到资料表,如下(中间省去一些code)

[C#]

string str = "AAA\nBBB\n\"CCC\"";

sqltxt = "UPDATE TB SET Field1 = '" + str + "';";

sqlcmd.CommandText = sqltxt;

但在资料表中结果却是AAABBB"CCC"

请问我哪里出错了呢? SQL C# 行
[解决办法]
不要拼串 "UPDATE TB SET Field1 = '" + str + "';";
要用带参数的SQL "UPDATE TB SET Field1 = @A;";
[解决办法]
C# 和数据库解析特殊符号是不一样的。

如果数据库中要保存你所列的字段,写成这样就行。'AAA\n''BBB''CCC'

你说明一下你要到效果才能帮你。
[解决办法]
强制格式化字符串:
比如:declare @a varchar(20)
set @a=N'aklsadj\skdfjk'
[解决办法]

在C#教科书里面明确的指出可以在定义String时前面加上@以防特殊符号被系统转义
String str=@"AAA\nBBB\n\"CCC\"";

读书人网 >SQL Server

热点推荐