A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 杨敏Yummy 中级黑马   /  2013-8-20 04:31  /  1498 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

在看省市联动视频的时候,让插入各省市的数据和编号。

--建立省份表
CREATE TABLE [dbo].[promary] (
    [proID]   INT           NOT NULL,
    [proName] VARCHAR (50) NOT NULL,
    PRIMARY KEY CLUSTERED ([proID] ASC)
);
--建立城市表
CREATE TABLE [dbo].[city] (
    [cityID]   INT           NOT NULL,
    [cityName] VARCHAR (50) NOT NULL,
    [proID]    INT           NULL,
    PRIMARY KEY CLUSTERED ([cityName] ASC),
    CONSTRAINT [FK_city_promary] FOREIGN KEY ([proID]) REFERENCES [dbo].[promary] ([proID])
);
按照小杨老师提供的网址建表,
执行这么一条语句INSERT INTO promary VALUES(1, '北京市')
插入数据时,结果省市显示的都为?,我看了一下表的定义,把varchar(50)都改成了nvarchar(50),还是不行额。如图:

但是自己又可以在数据库里面手动输入,于是又变成了这样:


按理说nvarchar是采用的Unicode编码,中文也是unicode编码,应该是互相认的,但很明显这里他发飙不认了。
最后我直接在中文字前加了个N,INSERT INTO promary VALUES(1, N'北京市')情况才算解决了,几百条,手都快硬了!!!
不知道各位有米有好的办法解决这种中文字乱码的问题?

4 个回复

倒序浏览
这个应该是你数据库属性-选项里头的排序规则用错了。
回复 使用道具 举报
直接全部替换多好,非得一条一条的加
回复 使用道具 举报
赵宗荣 发表于 2013-8-20 15:17
直接全部替换多好,非得一条一条的加

是的,傻B了,看到最后小杨老师也是这么改的。不过借此复习了一下中国各省市的行政划分{:soso_e118:}!!!
回复 使用道具 举报
瞎猫馒头米田共 发表于 2013-8-20 13:48
这个应该是你数据库属性-选项里头的排序规则用错了。

原来是这样,可惜没有在数据库中看到这一项。我是说内置数据库在vs里面的排序规则不知给藏哪儿了!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马