求救:关于Sysbase数据库中的sql语句的繁体。怎样解决

gengswallow 2004-03-30 03:57:28
我现在一个表:tbl_unitbase表.为Anywhere7.0.
表结构为 gsyear ,suname
记录为: 2004,国家粮食储备庫

我现在写sql语句:
select * from tbl_unitbase where suname = '国家粮食储备庫';一执行就出错。就是因为'庫'这个字的原因,因为它是繁体.但我最终目的是想
一:怎么才能让此语句执行成功,当然不能用这个语句
where suname like '%国家粮食储备%',这个语句肯定可以。我想是不是我需 要下载一个什么字体库这类的东东?
二:怎么可以在pb程序中防止让繁体字进入到数据库中呢?

谢谢各位大虾.
...全文
96 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
gengswallow 2004-04-01
  • 打赏
  • 举报
回复
sky,谢谢你,我已收到。
lzheng2001 2004-03-31
  • 打赏
  • 举报
回复
最好是用触发器来控制不能输入繁体字!
luckbird 2004-03-31
  • 打赏
  • 举报
回复
你是不是直接在PB脚本中写死的语句,而不是根据用户的输入进行查询?

如果是写死的语句的话,而你又是用的PB5的话,这是因为PB5对繁体字支持不好的原因。在相应的地方加~符号就可以解决问题。
xyzliuin 2004-03-31
  • 打赏
  • 举报
回复
mail给我
鸡翅多 2004-03-31
  • 打赏
  • 举报
回复
非常同意楼上的
gengswallow 2004-03-31
  • 打赏
  • 举报
回复
这不是我的问题。我只是编程的。再说了现在也不是问的这个问题。只是怎样解决内码转换的
问题。
sincerity 2004-03-31
  • 打赏
  • 举报
回复
用汉字字段来做主键?我觉得你应该从改进表结构方面来考虑这个问题。
gengswallow 2004-03-31
  • 打赏
  • 举报
回复
一楼二楼四楼说的都不可行。1.因为是数据窗口中的单位名称而且又是主键,不是用户的责任不责任的问题但是以后需要对数据更并且做删除操作,2.又怎么能做为变量呢,3.更不能做为代码存到数据库中虽然四楼说的有道理。

三楼说的可能有一些道理,但是具体怎么用内码控制呀?还是请三楼多多指教?
xyzliuin 2004-03-31
  • 打赏
  • 举报
回复
mail已发,请查收
gengswallow 2004-03-31
  • 打赏
  • 举报
回复
gengswallow@163.com

楼上的两位说的都很有道理。但是我不是写死的语句。我用的是pb8.0.
虽然触发器是可以解决以后用户在数据窗口输入时输入了非法字体。但是我怎么判断它输入的
是不是繁体字呀。
bluerain1980 2004-03-30
  • 打赏
  • 举报
回复
可以做一个代码表,让用户选择,数据库中存代码,这样就可以了。
xyzliuin 2004-03-30
  • 打赏
  • 举报
回复
1。你需要写一个函数,每一条sql语句都相应处理
2。简繁体的内码不同,你可以通过判断内码控制
chenlong9610 2004-03-30
  • 打赏
  • 举报
回复
这个问题,我想是不是可以用变量来代替,不知道行不行?
sincerity 2004-03-30
  • 打赏
  • 举报
回复
我觉得这其实属于业务逻辑问题,既然用户非要输入繁体字,是用户的责任,程序不用限制。

1,079

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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