delphi ADOQuery1.LoadFromFile如此诡异是什么原因?
时间:2011-12-28
来源:互联网
通常的用法
ADOQuery1.sql.text:='select * from temp ';
ADOQuery1.open;
ADOQuery1.close;
没有问题
然而下面的用法就怪怪的
ADOQuery1.LockType := ltBatchOptimistic;
ADOQuery1.sql.text:='select * from temp where 1=2';
ADOQuery1.LoadFromFile('f.txt');
ADOQuery1.close;
ADOQuery1.LockType := ltOptimistic;
ADOQuery1.sql.text:='select * from temp ';
ADOQuery1.open; ***** 此句出错 提示:'文件 select * from temp'找不到
ADOQuery1.sql.text:='select * from temp ';
ADOQuery1.open;
ADOQuery1.close;
没有问题
然而下面的用法就怪怪的
ADOQuery1.LockType := ltBatchOptimistic;
ADOQuery1.sql.text:='select * from temp where 1=2';
ADOQuery1.LoadFromFile('f.txt');
ADOQuery1.close;
ADOQuery1.LockType := ltOptimistic;
ADOQuery1.sql.text:='select * from temp ';
ADOQuery1.open; ***** 此句出错 提示:'文件 select * from temp'找不到
作者: llyzkjl 发布时间: 2011-12-28
是你的用法有問題吧?文件裝載成功後自動打開。你關閉後又打開,也沒有看到你的連接,自然找不到文件或表。
作者: Oraclers 发布时间: 2011-12-28
用法有問題吧?你從文件裝載,裝載成功後表自動打開,現在你把它關了再打開,也沒看到你的連接,那麼它到那裡打開表呢。
作者: Oraclers 发布时间: 2011-12-28
adoquery的loadfromfile后会断开和数据库的链它的默认commandtype会变为cmdFile,这时你应采用下列方法
adoquery1.close
Tadodataset(adoquery1).commandtype:=cmdtext;
adoquery1.sql.text:='select ......
adoquery1.open;
adoquery1.close
Tadodataset(adoquery1).commandtype:=cmdtext;
adoquery1.sql.text:='select ......
adoquery1.open;
作者: funxu 发布时间: 2011-12-28
lZ正解,看LoadFromFile的源码:
procedure TCustomADODataSet.LoadFromFile(const FileName: WideString);
begin
Close;
CommandType := cmdFile;
LockType := ltBatchOptimistic;
CommandText := FileName;
Open;
end;
CommandType会变成cmdFile;
LockType变成ltBatchOptimistic;
所以要换会正常模式,要重新更改这2个设置
LZ前面ADOQuery1.LockType := ltBatchOptimistic;这句都可以不用
procedure TCustomADODataSet.LoadFromFile(const FileName: WideString);
begin
Close;
CommandType := cmdFile;
LockType := ltBatchOptimistic;
CommandText := FileName;
Open;
end;
CommandType会变成cmdFile;
LockType变成ltBatchOptimistic;
所以要换会正常模式,要重新更改这2个设置
LZ前面ADOQuery1.LockType := ltBatchOptimistic;这句都可以不用
作者: kaikai_kk 发布时间: 2011-12-28
引用 4 楼 kaikai_kk 的回复:
楼上+楼上的楼上正解,看LoadFromFile的源码:
……
楼上+楼上的楼上正解,看LoadFromFile的源码:
……
作者: kaikai_kk 发布时间: 2011-12-28
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28