使用参数化查询插入数据时,偶尔会插入中文为乱码(概率1%)的数据,代码如下:
...
cmd.CommandText = "insert into tablename (colnumn1,colnumn2) values(@param1,@param2)";
cmd.Parameters.Add("@param1", SqlDbType.NVarChar).Value = "some chinese words";
cmd.Parameters.Add("@param1", SqlDbType.NVarChar).Value = "some chinese words";
...
百度如何消除中文乱码时,查到一种解决方法,就是加N,如:
... values(N'some chinese word')
但是,如果我结合参数化查询,这样的写的话:
... values(N@param1)
会报错:Invalid column name 'N@brand'.
请问应该如何解决?
cmd.Parameters.Add("@param1", "some chinese words");
可以直接这样写啊。我这样写没有遇到过中文乱码哎