我在.aspx页面上有这个文本框,在提交时它会将文本框中输入的内容存储到MS SQL 2005中的nvarchar列中。
一切正常,直到你尝试插入汉字 这些字符将转换为数据库中的问号(?)。
如何存储来自< input type =“text”>的非英语字符?到数据库?
答案 0 :(得分:4)
主要的是确保管道的每一步都支持国际字符;即 - 你在什么时候第一次看到“?” ?在aspx代码中?或者只有一旦进入数据库表?
网页应该已经在使用UTF8这样的编码了,所以应该没问题 - 但是你在数据库中使用的数据类型是什么?它必须是nchar
/ nvarchar(n)
/ nvarchar(max)
(或旧版SQL Server上的ntext
)。