hur.cn - 华软网

 热门搜索

关于PB中odbc的连接出错的问题

  作者:未知    来源:网络    更新时间:2017/12/5
在应用程序的OPEN 中做了对数据库的初始化的程序:
sqlca.dbms="odbc"
sqlca.autocommit=false
sqlca.dbparm="connectstring='dns=login'"
connect using sqlca;

if sqlca.sqlcode<>0 then 
messagebox("提示","失败的原因是:" +sqlca.sqlerrtext)
return
end if
open(w_connect) 
在窗口中命令按钮的单击事件中写了下面的程序:


//要实现的功能是从表中取出数据给控件赋值
  
string ls_name  //          ls_name为存储从表中取出的姓名字段的数值的变量
 
 select name into :ls_name from login;

sle_name.text =ls_name      //sle_name为窗口中的控件

为什么在运行的时候总是提示"database c0038:sqlsate=3700  [sybase][odbc driver][asptive server anywhere] syntax error or access violation: near 'login'in name from [login]"?
这是什么意思?是哪里的错误?
------华软网友回答------
database c0038:sqlsate=3700  [sybase][odbc driver][asptive server anywhere] syntax error or access violation: near 'login'in name from [login]"是哪里提示的错误?窗口打开之前还是打开之后?
------华软网友回复------
select top 1 name into :ls_name from login;
------华软网友回复------
应该是连接有问题,我怀疑没有连接到数据库
------华软网友回复------
那句sql你直接在开发环境下运行可以吗,可以的话可能没有连上库,因为没有密码阿,呵呵!要是不可以的话可能是语法不支持阿,你用的是ASA吧!
------华软网友回复------
回尼米兹:是在开发环境下运行的,数据库是连接上了的。有时同样的语句在不同的应用程序中,有的能够运行,有的则不能,这是为什么?另外,在我机器上做的程序,拷到其他机器上时(包括数据库文件),如何把数据库实现与数据库的连接呢?谢谢!
------华软网友回复------
select name into :ls_name from login
可能这句话有问题
------华软网友回复------
应该是没有连接到数据库。
------华软网友回复------
“select name into :ls_name from login”
这里的"login"是数据库名称 还是表名称啊
如果是表名称话  你的DSN配置有问题
如果是数据库名称的话  你就应该将程序修改成相应的表名称
------华软网友回复------
为什么要自己写连接参数呢?
到数据库画笔里粘贴过来就可以了啊
而且不容易出错
------华软网友回复------
请教风男,怎样从数据画笔里粘贴过来,过程是怎样?请详细描述。多谢!      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。