mdb 库,query 不能执行(50分)

  • 主题发起人 主题发起人 xf163
  • 开始时间 开始时间
X

xf163

Unregistered / Unconfirmed
GUEST, unregistred user!
mdb 库,在SQL Explorer 中执行 updata tk set check='y' where ....
通过, 在程序中用同样的语句就出错!好像说check 是关键字 改用别的字段
名后, 又‘ table is read only "
如果不改字段名是否可以正常执行, 如何写 SQl 语句
 
会用sql builder吗?
选中query控件,然后单击右键,选中sql builder,就行了,还有不会的给我发信
 
I meet this In FoxPro.
你用独占方式试试。
另外,where ....若有日期条件的话,格式为#2000-1-1#
在SQL Explorer 中执行 update 时,防止死锁。
或按陈君凯说的试试。
 
看一看QUERY 的属性REQUESTLIVE 选项,选中“FALSE”,应该可以了!
 
还不行就把他做成可执行查询放到mdb库里,用query
 
报什么出错信息?
 
用参数试试
 

一抽题系统,随机产生题号后,将此题号的题目后作上标记
其中 cked 为表TK 中一字段(文本型),表示是否选中, where 后有条件(th=cno);条件肯定没有问题;
....

with query1 do
begin
close;
sql.clear;
sql.add('update tk set cked=:ctext where ...');
parambyname('ctext').asstring:='y';
open;
end;
end;

or
with query1 do
begin
close;
sql.clear;
sql.add('update tk set cked="Y" where ....');
open;
end;
end;
都不行! 错误提示为:
[Microsoft][ODBC Microsoft Access Driver] Too few parameters....
or :
error creating cursor handle.

在 sql builder 中执行以上查询同样出错;

目前暂时只能在表中依次循环判断,在符合条件的记录处 EDIT ,效率很低。
 
附加功能 将问题提前
 
多人接受答案了。
 
update语句不能用open方法,应该用execsql方法。
 
后退
顶部