步骤一
先建一个数据库的文本参数文件,文件名FDDrivers.ini,存放在执行文件所在目录,内容以oracle为例如下:
[Oracle_Pool]
DriverID=Ora
Database=(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.1.220)(PORT = 1521)))(CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME = orcl)))
User_Name=test
Password=test
CharacterSet=UTF8
Pooled=true
这里Pooled=true是不能少的,是连接池里的关键设置哦
注:也可以直接在程序Create创建时直接赋值。
步骤二
在数据模块里,放置FDManager1
控件,并将其ConnectionDefFileName
指向FDDrivers.ini
文件,如D:\FDmanager\Win32\Debug\FDDrivers.ini
,并把Active
设为true
步骤三
在数据模块里里,放置FDPhysOracleDriverLink
,并将其VenderLib
指向oracle
的库文件D:\FDmanager\Win32\Debug\oci.dll
,这里要说明的是,需要四个库文件:oci.dll
,oraocci11.dll
,oraociei11.dll
,orasql11.dll
,这些文件全部都放在执行文件所在目录。
步骤四
放置FDGUIxWaitCursor
在数据模块里
步骤五
放置数据库连接控件FDConnection
,在数据模块里,并将其ConnectionDefName
指定为FDDrivers.ini
文件中的第一行中的名称,可以下拉选的
步骤六
这样设置好后,在窗口代码里,就可以按如下调用:
procedure Tfrm1.Button2Click(Sender: TObject);
begin
if not dm.FDConnection1.Connected then
dm.FDConnection1.Connected := True;
with dm.FDQuery2 do
begin
close;
sql.Clear;
sql.Add('select count(*) num from base_tab ');
open;
end;
Label2.Text:=dm.FDQuery2.FieldByName('num').AsString;
dm.FDConnection1.Connected := False;
end;
注意,这里的dm.FDConnection1.Connected := True
就是在连接池里获取一个连接,而dm.FDConnection1.Connected := False;则是归还一个连接,不是断开,
原文作者:
广州雨儿
原文:https://blog.csdn.net/zcpxieqing/article/details/50033633
网友评论