ADO的sql语句和ODBC的有什么区别?( 鉴于csdn的回答率,暂定50,解决了一定200分)
耙子 2002-06-24 01:23:58 access2000 , bcb5 + sp1 + adosp 在win2K下。
为什么我的程序在使用adoQuery的时候有很大区别。
当时使用ado 通过odbc访问的时候一切正常,
但是当ado jet4.0 OLE的时候很多sql语句就都错了,而且没有错误原因,就是一句话“未指明错误”,中文的,肯定是ado jet4.0返回的。
如下语句在odbc下没问题
select a.id, a.ata, a.TicketNo
, (select name from customer where id=a.cargoagent) as CargoAgentName
, (select name from customer where id=a.Consigner) as ConsignerName
, a.Cargo ,a.size
, a.apiecequantity
, (a.apiecequantity * a.unitweight) as weight
from InStorage a
order by a.ata desc
但是在ado jet4.0下就错了。(设计期间和运行期间都错,使用active= true或者 Open都不行)
如下语句又在哪都好用。
select a.*,
(select ticketNo from inStorage where a.ticketID=ID) as TicketNo,
(select Cargo from inStorage where a.ticketID=ID) as Cargo,
(select unitweight from inStorage where a.ticketID=ID) * quantity as Weight
from OutStorage a
order by a.id desc
各位兄弟帮我看看为啥。
另外,程序发布到win xp下偶尔会报告 ADOQuery->SQL->Strings 错误。
靠,咋这么坎坷呢?