Chinaunix

标题: 执行query1.open或query1.ExecSQL命令时,出现错误提示! [打印本页]

作者: smrj    时间: 2003-08-20 10:19
标题: 执行query1.open或query1.ExecSQL命令时,出现错误提示!
软件环境:Delphi7.0(win9 + Sybase 11.0.3(sco unix5.05)

我发现能够成功连接到数据库,得到数据表名称及记录内容,
在用query控件执行SQL命令时,比如执行query1.open或
query1.ExecSQL命令时,出现错误提示!如下:

Project DbConnect.exe raised exception class EDBEngineERRor with
message 'General SQL error.
Cannot find the requested character set in Syschersets: name=
'cp850'.'. Process stoped. Use Step or Run to continue.

应该怎样处理?摸不到头绪?!


附:
>;sp_helpsort
>;go
------------------------------------------------------------------
Character Set = 1, iso_1                                          
    ISO 8859-1 (Latin-1) - Western European 8-bit character set.   
Sort Order = 50, bin_iso_1                                         
    Binary Sort Order for the ISO 8859-1 (Latin-1) Character Set   
Server message 0, Severity 10, State 1, Line 359

                                                                  
------------------------------------------------------------------
  ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = >; ?   
  @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _  
  ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~ ?
  ??????????????????????????????
作者: zhangyh123    时间: 2003-08-20 11:43
标题: 执行query1.open或query1.ExecSQL命令时,出现错误提示!
我的机器上面的字符集是这样的,看看你的如何。

12.jpg (32.43 KB, 下载次数: 51)

12.jpg

作者: smrj    时间: 2003-08-24 11:30
标题: 执行query1.open或query1.ExecSQL命令时,出现错误提示!
--------------------------------------------------------------------------------

软件环境:Delphi7.0(win9 + Sybase 11.0.3(sco unix5.05)

               客户端是win98操作系统,但安装的是sybase for win95
--------------------------------------------------------------------------------

不知道你所说字符集设置是指的客户端sybase字符集设置,还是什么?
没有找到你所说的那个界面那里有?谢谢指教!!!
作者: smrj    时间: 2003-08-28 12:02
标题: 执行query1.open或query1.ExecSQL命令时,出现错误提示!
无人能答,请版主救命!!!
作者: smrj    时间: 2003-08-31 18:03
标题: 执行query1.open或query1.ExecSQL命令时,出现错误提示!
已经N天了!没高手答复,自己顶!
作者: chenfeng825    时间: 2003-09-01 08:58
标题: 执行query1.open或query1.ExecSQL命令时,出现错误提示!
你的server的char set=english sort = iso_1

你的local.dat的[msdos] locale = default, us_english, cp850 你尝试改成locale = default, us_english, iso_1试试看。

错误的提示是说你客户端设定的default字符同服务器不同!win98可能用的不是win3 or win32s!
作者: smrj    时间: 2003-09-02 14:32
标题: 执行query1.open或query1.ExecSQL命令时,出现错误提示!

兄弟,按照你方法:
local.dat的[msdos] locale = default, us_english, cp850 改成locale = default, us_english, iso_1
原来的错误提示依然,请指教
作者: chenfeng825    时间: 2003-09-02 14:48
标题: 执行query1.open或query1.ExecSQL命令时,出现错误提示!
在NT下测试能过吗?因为没有win98和delphi的环境所以不能重现你的问题.
NT&2000&xp的local.dat都是使用 [NT]这个段的内容。在NT下测试过
server是english iso_1,本地的local.dat是cp850和iso_1都没有问题,估计可能情况时win98支持的语言集的问题。
作者: zhangyh123    时间: 2003-09-02 14:56
标题: 执行query1.open或query1.ExecSQL命令时,出现错误提示!
select id,csid,name from syscharsets
的结果


     0        0        ascii_8
0        192        defaultml
1        0        iso_1
1        192        thaidict
2        0        cp850
4        192        utf8bin
39        192        altnoacc
45        192        altdict
46        192        altnocsp
47        192        scandict
48        192        scannocp
50        1        bin_iso_1
50        2        bin_cp850
50        192        binary
51        192        dict
52        192        nocase
53        192        nocasep
54        192        noaccent
55        192        espdict
56        192        espnocs
57        192        espnoac
59        192        rusnocs
64        192        cyrnocs
65        192        elldict
69        192        hundict
70        192        hunnoac
71        192        hunnocs
73        192        turknoac
74        192        turknocs


叫你在服务器上增加一个字符集,你做了没有??     


另外 ,不用delphi  在 isql 中可以正确显示汉字吗?
作者: smrj    时间: 2003-09-04 15:21
标题: 执行query1.open或query1.ExecSQL命令时,出现错误提示!
说得很有道理!可惜我没有NT环境!不用delphi 在 isql 中可以正确显示汉字!另外机器是单位上的服务器,要我在服务器上增加一个字符集,我可不敢!万一弄出什么,不好交代!有没有其它办法?不过倒可以在家里做个环境试试!

注:能够连接到数据库,并看到正确的汉字记录,只是执行query1.open或query1.ExecSQL命令时时出现这个错误提示!

我的select id,csid,name from syscharsets
结果:

id csid name
-- ---- ------------------------------
0 0 ascii_8
1 0 iso_1
50 1 bin_iso_1

而你们的有那么多的字符集,能否具体说明一下,我还应添加那一个字符集?
这个问题是不是跟我用的客户端是sybase for win95有关,而我的系统是win98,能否给我提供一个sybase for win98或win2000的客户端链接地址,谢谢指教!
作者: chenfeng825    时间: 2003-09-04 15:35
标题: 执行query1.open或query1.ExecSQL命令时,出现错误提示!
于sybase client应该没有关系。只是可能是win98的问题或是服务器字符集少了的关系!
作者: Eisen    时间: 2003-09-04 16:38
标题: 执行query1.open或query1.ExecSQL命令时,出现错误提示!
恩。在sco上把sybase用户的环境变量LANG设成us_english之后,重起数据库,应该就正常了。
作者: smrj    时间: 2003-09-05 14:49
标题: 执行query1.open或query1.ExecSQL命令时,出现错误提示!
看来可能真的是win98的问题或是服务器字符集少了的关系!
对不起!能不能告诉我怎样在sco上把sybase用户的环境变量LANG设成us_english?谢谢!
作者: smrj    时间: 2003-09-05 14:58
标题: 执行query1.open或query1.ExecSQL命令时,出现错误提示!
看来可能真的是win98的问题或是服务器字符集少了的关系!
对不起!能不能告诉我怎样在sco上把sybase用户的环境变量LANG设成us_english?谢谢!
作者: smrj    时间: 2003-09-05 15:03
标题: 执行query1.open或query1.ExecSQL命令时,出现错误提示!
看来可能真的是win98的问题或是服务器字符集少了的关系!
对不起!能不能告诉我怎样在sco上把sybase用户的环境变量LANG设成us_english?谢谢!




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2