使用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\"";