读书人

实施sql语句sqlcode值变为-1什么原

发布时间: 2013-01-07 10:02:25 作者: rapoo

执行sql语句,sqlcode值变为-1,什么原因啊???
代码transacton sqlca连接数据库连上以后,只要遇到select-where语句,sqlcode就由0变为-1
执行connect后sqlcode变为0,但是遇到sql语句又变为-1
这是什么原因,请高手指教!!!
[解决办法]
0Success.
100Fetched row not found.
-1Error; the statement failed. Use SQLErrText or SQLDBCode to obtain the detail.

你用MessageBox("SQL error", SQLCA.SQLErrText)看看是什么
[解决办法]

引用:
不是
gf_set_transaction_o 是取第一个数据库的表xt_login
这个表的内容是第二个数据库信息,此时还没有连第二个数据库


此时,LZ 应该检查一下是不是操控了不一至的 transaction !

select XXX into :ls_XXX from XXX where XXX using in_transaction;

if in_transaction.sqlcode <> 0 then
messagebox(string(in_transaction.sqlcode), in_transaction.sqlerrtext)
end if
[解决办法]
引用:
select servername,dbname,logid,logpass,dbms
into :ls_servername,:ls_dbname,:ls_logid,:ls_logpass,:ls_dbms
from xt_login
where login_type=:in_type ;

你写的sql语句都没有用到所定义的事务,默认的为sqlca,估计sqlca连接的不是这个库,所以会出现类型不匹配之类的~

读书人网 >PB

热点推荐