sql server 2008 插入特殊字符的问题

KKBB24 2018-09-18 05:25:44
最近在使用sql server2008 时出现了一个问题,之前有一张表里的一个字段的类型为varchar,然后最近在存一个含有特殊字符的数据,A01.001† 时,发现存到数据库里变成了 A01.001?,最后一个特殊字符变成了问号,恳请各位大佬能教教小弟怎么解决这个问题。
...全文
611 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
吉普赛的歌 版主 2018-09-19
  • 打赏
  • 举报
回复
varchar 只能保存英文、数字等ascii码表内的字符, 对于中文、特殊字符是无能为力的。 当然, 如果排序规则正好对上了, 也许不会乱码, 但并不保险, 不能靠这个来保障。 所以, 必须用 nvarchar 去保存除英文、数字之外的数据。 对于已经产生了乱码的数据, 数据库是很难处理了。 如果应用程序(比如网页)上能正常显示, 可以用程序调用, 把数据全部读取后保存到另外一个表, 把数据插入到改为 nvarchar 的新表。
KKBB24 2018-09-19
  • 打赏
  • 举报
回复
引用 1 楼 RINK_1 的回复:
把字段类型改成nvarchar试试

改成nvarchar插入数据或者更新数据是都要加一个N,那要改好多地方
RINK_1 2018-09-18
  • 打赏
  • 举报
回复
把字段类型改成nvarchar试试

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧