SQL数据库无法识别非英文字符

时间:2017-03-31 11:54:56

标签: c# .net

我试图创建一个使用数据库的应用程序,但我需要它将数据保存为Unicode ... 我将类型更改为nchar或ntext但仍然将我的字符保存为问号 有解决方案吗 谢谢你的帮助

1 个答案:

答案 0 :(得分:0)

您必须告诉数据库您正在发送unicode字符串。

使用参数化查询(您应该为安全起见):

SqlCommand cmd;
cmd.Parameters.Add("@mycolumn", SqlDbType.NVarChar, 255).Value = "hello";

使用直接查询(为了所有好事,请使用参数化查询):

string query = "INSERT INTO mytable (mycolumn) VALUES (N'hello');";

P.S。在数据库中使用nvarchar可能比使用nchar更好,因为我相信nchar会将字符串填充到字段长度。