能否在DLL中访问数据库中的数据?如果能,请赐教。(100分)

  • 主题发起人 主题发起人 李辉
  • 开始时间 开始时间

李辉

Unregistered / Unconfirmed
GUEST, unregistred user!
本人在编程中,要在DLL中调用数据库中的数据,不知如何做,请各位高
手赐教。
 
和正常调用没什么区别
如果你的DLL里没有含 FORM , 那使用动态建立的 QUERY和TABLE都可以访问
数据库
如果含有FORM,可以在设计期在FORM上 放置 QUERY或TABLE访问数据库

需要注意的是在DLL里的每一个QUERY和TABLE 最好有自己的SESSION
否则会出错
可参考这里看看
http://www.gislab.ecnu.edu.cn/delphibbs/DispQ.asp?LID=113978
 
DLL与exe区别不大,

只要代码正确,干什么都可以。

需要注意的是DLL可能会有多个调用同时运行,

这就是老王建议你加一个TSession(Database Access页)

的原因,记得把AutoSessionName属性设置为True。

同样的,对于其他的操作也要注意多线程同步的问题,

比如文件存取等等。好的习惯应该是每次被调用都产生

一整套变量,使用完后全部释放。
 
如果不希望DLL中使用界面(Form),你可以用一个TDataModule作为数据库控件的容
器,并放入一些不可见的数据库控件,如:TSession,TTable,TDataSource,
TQuery。
 
多人接受答案了。
 
后退
顶部