当前位置:编程学习 > C#/ASP.NET >>

vs2012自带数据库插入数据问题,求大侠

新手求指教,数据类型选择varchar(50),用insert插入数据为中文后显示问号,手动输入回车后也是问号,用nvarchar试了下,insert插入是问号,手动输入正常,求大侠告知哪里设置。 我用sqlserver2012试了下正常的。 --------------------编程问答-------------------- 中文前面加N了吗? N'中国'。 --------------------编程问答--------------------
引用 1 楼 blue_apple2006 的回复:
中文前面加N了吗? N'中国'。

varchar 手输都不行,加了没用, nvarchar倒是可以的,谢了。 --------------------编程问答-------------------- 编码问题
1、右击你所建的数据库,点击“属性”,选择“选项”并点击。将其中的排序规则设置为:Chinese_PRC_CI_AS(选择下拉列表框即可设置),然后“确定“。

2、在表中将你的汉字字段的数据类型设置为nvarchar型或ntext型,设置前最好先将表中的数据全部删除。(不要使用varchar或text型,因为它们只会继续使你的数据乱码)。

3、设置好后,关闭服务器,再重新启动,就可生效了。 --------------------编程问答--------------------
引用 3 楼 Chinajiyong 的回复:
编码问题
1、右击你所建的数据库,点击“属性”,选择“选项”并点击。将其中的排序规则设置为:Chinese_PRC_CI_AS(选择下拉列表框即可设置),然后“确定“。

2、在表中将你的汉字字段的数据类型设置为nvarchar型或ntext型,设置前最好先将表中的数据全部删除。(不要使用varchar或text型,因为它们只会继续使你的数据乱码)。

3、设置好后,关闭服务器,再重新启动,就可生效了。

首选感谢帮助解决问题,我现在数据库sqlserver2012里设置是对的,我现在的 问题是vs2012里 通过项目添加 的基于数据库服务,就是.mdf格式的这个数据库,不知在vs哪里设置,这应该是vs2012自带的一个实例。 --------------------编程问答--------------------
引用 4 楼 xiaopengyou1989 的回复:
Quote: 引用 3 楼 Chinajiyong 的回复:

编码问题
1、右击你所建的数据库,点击“属性”,选择“选项”并点击。将其中的排序规则设置为:Chinese_PRC_CI_AS(选择下拉列表框即可设置),然后“确定“。

2、在表中将你的汉字字段的数据类型设置为nvarchar型或ntext型,设置前最好先将表中的数据全部删除。(不要使用varchar或text型,因为它们只会继续使你的数据乱码)。

3、设置好后,关闭服务器,再重新启动,就可生效了。

首选感谢帮助解决问题,我现在数据库sqlserver2012里设置是对的,我现在的 问题是vs2012里 通过项目添加 的基于数据库服务,就是.mdf格式的这个数据库,不知在vs哪里设置,这应该是vs2012自带的一个实例。

和VS没关系 --------------------编程问答--------------------
引用 5 楼 Chinajiyong 的回复:
Quote: 引用 4 楼 xiaopengyou1989 的回复:

Quote: 引用 3 楼 Chinajiyong 的回复:

编码问题
1、右击你所建的数据库,点击“属性”,选择“选项”并点击。将其中的排序规则设置为:Chinese_PRC_CI_AS(选择下拉列表框即可设置),然后“确定“。

2、在表中将你的汉字字段的数据类型设置为nvarchar型或ntext型,设置前最好先将表中的数据全部删除。(不要使用varchar或text型,因为它们只会继续使你的数据乱码)。

3、设置好后,关闭服务器,再重新启动,就可生效了。

首选感谢帮助解决问题,我现在数据库sqlserver2012里设置是对的,我现在的 问题是vs2012里 通过项目添加 的基于数据库服务,就是.mdf格式的这个数据库,不知在vs哪里设置,这应该是vs2012自带的一个实例。

和VS没关系

版主大大 这两个第一个sql  第二个是vs里的 确实是vs里面的有问题 --------------------编程问答-------------------- 下面这个有Chinese_PRC_CI_AS吗?? --------------------编程问答--------------------
引用 7 楼 Chinajiyong 的回复:
下面这个有Chinese_PRC_CI_AS吗??

。。。。。再找 就是没找到 不知道哪里设置,不过你说的排序规则问题应该是对的。多谢了 --------------------编程问答-------------------- vs里面排序规则在哪里修改呀?求指导 --------------------编程问答-------------------- 双击你的database.mdf, 在server explorer中,右击你的数据库.mdf, 选新建查询,
然后再次右击你的数据库.mdf, 选关闭连接(这是保证打开查询窗口能以独占方式访问数据库),
在查询窗口中输入:
ALTER DATABASE [D:\PROJECT\CONSOLEAPPLICATION1\xxx\xxxDATABASE.MDF] -- 这里改成你的数据库文件名
COLLATE Chinese_PRC_CI_AS
点上方的执行箭头,改完后要重新建下表。
--------------------编程问答-------------------- varchar是单字节类型,nvarchar是双字节类型,

所以nvarchar类型保存后没有问题是对的,是很正常的,因为汉字都是两个字节来存储 --------------------编程问答-------------------- 除
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,