Sql2000如果完美支持多语言问题-支持维语!

魔鬼代言人5800 2014-09-23 10:50:39
sql2000版本

表字段是nvarchar类型

在查询分析器里执行
insert into dbo.test
(id,test)
values (3,N'قاتاىق')
是没有问题,但现在不想在前面加个N,因为前端开发工具是直接insert,如果都加N,改动工作量挺大的!

...全文
215 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 11 楼 sdhp 的回复:
PB的话可以改 SQLCA.DBParm = "DisableBind=0";或 SQLCA.DBParm = "DisableBind=1"; 看看,两个参数不同生成的SQL语句也不同,一个是直接生成insert还有一个是调用的存储过程,并给参数加N的
感谢您的回复,数据库连接参数加上DisableBind=0,解决了问题!! 看来我提错版块了!! 也非常感谢版主的回复! 结贴!!
sdhp 2014-09-23
  • 打赏
  • 举报
回复
PB的话可以改 SQLCA.DBParm = "DisableBind=0";或 SQLCA.DBParm = "DisableBind=1"; 看看,两个参数不同生成的SQL语句也不同,一个是直接生成insert还有一个是调用的存储过程,并给参数加N的
發糞塗牆 2014-09-23
  • 打赏
  • 举报
回复
这个我知道,我也搞过人力处理,确实蛋疼,这也是很多地方建议使用存储过程封装的原因之一,改动没有那么大,并且几乎即可生效,不用重编译生成程序
飘遥诗涯 2014-09-23
  • 打赏
  • 举报
回复
不明觉厉!
  • 打赏
  • 举报
回复
主要是PB开发的东西,大部分都是数据窗口直接操作数据库!!人为写的SQL语句很少,那我还得把数据库操作库的SQL语句提出来,然后在重新改造!!这工作量太大了!
發糞塗牆 2014-09-23
  • 打赏
  • 举报
回复
像我以前公司的ERP系统,即使当时只运行在大陆,但是老板一直想用在新加坡、台湾那些地方,所以所有可能出现多语言的地方都已经换成了Unicode类型
發糞塗牆 2014-09-23
  • 打赏
  • 举报
回复
其实这个应该是设计问题,和RDBMS关系不大,不过如果你熟悉的话,换来试试也不失为一个好的办法
  • 打赏
  • 举报
回复
引用 4 楼 DBA_Huangzj 的回复:
这个跟版本没什么关系,问题是你即使在PB层面已经是Unicode的数据,进入SQL Server之后如果不“告诉”SQL Server这是Unicode类型,那么即使表结构已经是N开头的,也存不进去,这是例子(2012上的):

CREATE TABLE testN
(NAME VARCHAR(10),name2 NVARCHAR(10))
INSERT INTO testn 
VALUES('abc',N'قاتاىق'),
('قاتاى','قاتاىق')

SELECT * FROM testn

/*
NAME       name2
---------- ----------
abc        قاتاىق
?????      ??????
*/
我觉得虽然工作量大,但是有必要的时候还是要修改
对,现在就是这个问题,看来是没有办法了!! 高版本解决也解决不了这个问题,那我换个数据库试试,换postgresql,如果还解决不了,那就只能改动前端了!
發糞塗牆 2014-09-23
  • 打赏
  • 举报
回复
这个跟版本没什么关系,问题是你即使在PB层面已经是Unicode的数据,进入SQL Server之后如果不“告诉”SQL Server这是Unicode类型,那么即使表结构已经是N开头的,也存不进去,这是例子(2012上的):

CREATE TABLE testN
(NAME VARCHAR(10),name2 NVARCHAR(10))
INSERT INTO testn 
VALUES('abc',N'قاتاىق'),
('قاتاى','قاتاىق')

SELECT * FROM testn

/*
NAME       name2
---------- ----------
abc        قاتاىق
?????      ??????
*/
我觉得虽然工作量大,但是有必要的时候还是要修改
  • 打赏
  • 举报
回复
引用 1 楼 DBA_Huangzj 的回复:
据我了解在SQL Server层面上只能这样做
是版主回复的啊,荣幸!!那各行业管理系统是如何支持多语言的呢! 我现在有一套进销存系统,PB开发的,想支持维语,版主给一些建议!
  • 打赏
  • 举报
回复
高版本能解决这个问题吗(2005或者2008),前端程序不想改动太多!
發糞塗牆 2014-09-23
  • 打赏
  • 举报
回复
据我了解在SQL Server层面上只能这样做

34,593

社区成员

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

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