日期:2014-05-19  浏览次数:20508 次

急求:数据库不能插入中文,请求帮助!
我用.net做的网站,在往数据库里插入数据的时候,中文全都变成了“?”,符号,字母和数字都不变,应该怎样解决这个问题?请求帮助!
在sql里直接输入中文就可以,但是在.net里用sql文“insert”插入数据时,中文就变成“?”了。
我用的是sqlserver   2005,数据库表的里,字段的数据类型是nvarchar。
请问哪里出的问题。

------解决方案--------------------
在字符前面加个N

create table t(n nvarchar(10))
insert t
select N '表名 '

drop table t
------解决方案--------------------
确实不解,楼主用的已经是 nvarchar 了,应该中文没问题呀.
------解决方案--------------------
insert into 表名 select N '中文 '

------解决方案--------------------
如果表中字段指定为Nvarchar,则追加时在串前加N '

如:

insert into 表名(字段名) select N 'aaa '
-----------------
真的是这样麻烦吗?我还以为只要是nvarchar型字段就行了。
如果这样也太麻烦了,每次插入记录时就要加N????
------解决方案--------------------
用nVarchar類型需要在插入語句加上N ' ',如果不想每個都加N,那就將字段類型改為varchar即可.
------解决方案--------------------
--统一都加N

strinsert = "insert into tiezi n(tgame,tfenqu,tfenfu,ttatle,tuser,tneirong) values(N ' " + TextBox1.Text + " ',N ' " + TextBox2.Text + " ',N ' " + TextBox3.Text + " ',N ' " + TextBox4.Text + " ',N ' " + Label8.Text + " ',N ' " + TextBox5.Text + " ') "