在access中运行以下语句,为何出错.!(50分)

  • 主题发起人 主题发起人 lonelyboy
  • 开始时间 开始时间
L

lonelyboy

Unregistered / Unconfirmed
GUEST, unregistred user!
query1.Close;
query1.SQL.clear;
query1.SQL.Add('insert into temp (qc,today)');
query1.SQL.Add('select remain,#2002-05-04# from dayover');
query1.SQL.Add('where rjdate=#2002-05-03#');
query1.ExecSQL;
以上语句在access可以执行后,老出现英文错误:
Access violation at address 1F487CAB in module 'msado15.dll'.
write of address 09A3200C.
 
日期格式是不是要用datevalue函数转换啊!
 
应该和上面语句无关。是不是程序别的地方出错了?
 
是不是语句间少了空格。
 
至少把错误信息写出来呀。
 
以上的query为adoquery
 
注意:表名不要用:temp,可能会与系统表冲突的
insert into ...应该 使用ExecSQL
select ...应该 使用 open;
 
Access 是个小型的数据库,功能很小,不支持事物,子查询。
你的与语句有Select ,Insert 分别是两个动作,
Access 只能一次支持一个动作,是以出错
 
query1.Close;
query1.SQL.clear;
query1.SQL.Add('insert into temp (qc,today)');
query1.SQL.Add('select remain,:date1 from dayover');
query1.SQL.Add('where rjdate=:Date2);
query1.parays[0].value:='2002-05-04';
query1.parays[1].value:='2002-05-03';
query1.ExecSQL;

 
TO:f643208
你的说法全错了,你所说的在ACCESS2000中全部都可支持,请看看它的帮助再说话。
 
先给Delphi打补丁,再升级ADO
 
请给delphi升级ado补丁.
 
后退
顶部