SQL Server插入中文数据后出现乱码

王朝学院·作者佚名  2016-05-26
窄屏简体版  字體: 小  |  中  |  大  |  超大  

SQL Server插入中文数据后出现乱码今天在做项目的过程中遇到如标题的问题,情况如下图:

数据库使用的是SQLServer2012版本,创建表的脚本如下:

CREATE TABLE [dbo].[Type]([TypeId] INT NOT NULL PRIMARY KEY, [TypeName] NVARCHAR(50)NOT NULL, [Description] NVARCHAR(255) NULL, [CategoryId] INT NOT NULL DEFAULT 0)

根据一些相关文档提到的解决方案,需要包含中文数据的字段,一般定义为nchar/nvarchar数据类型。但实际应用中,即使这样定义了数据库表字段,也会产生乱码。此时尝试了另一种解决方案:即添加中文数据时,在插入的中文字符前添加大写字母N,脚本示例如下:

MERGE dbo.[Type] AS TargetUSING (SELECT 0, N'其它', N'未定义消费类别', 0UNIONSELECT 1, N'主食', N'米、面、油、盐等', 1UNIONSELECT 2, N'副食', N'肉、菜、蛋、熟食等' , 1UNIONSELECT 3, N'餐饮', N'含堂食外送', 1UNIONSELECT 4, N'饮料', '', 2

经过验证,应用此方案可以解决中文乱码问题。

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航