當前位置:首頁 » 數據倉庫 » delphi資料庫連接池
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

delphi資料庫連接池

發布時間: 2022-12-16 13:23:31

『壹』 delphi連接資料庫

不知道你連接的是sql Server 還是Access?在連接不同的資料庫時會有一點差別.
連接到SQL Server:
以下是設置:(以前回答別人的時候寫的,這里修改了下)
1,新建Project。
2,在FORM中放入ADOConnection控制項。
3,雙擊ADOConnection控制項,然後點擊Build...按鈕,在「提供者」頁中選擇

「Microsoft OLE DB Provider For SQL Server 」,然後點擊「下一步」按鈕,

在「連接」頁中選擇要連接的SQL資料庫的路徑和資料庫的文件名.如果資料庫沒

有密碼,那就可以了,如果有密碼,在下面的兩個編輯框中輸入用戶名和密碼.
添入
用戶名和密碼後,點擊「測試連接」按鈕,出現「測試連接成功」的對話框。
5.把 ADOConnection控制項的LoginPromtp設為false.
http://..com/question/26380588.html

連接access第3步有差別.
3,雙擊ADOConnection控制項,然後點擊Build...按鈕,在「提供者」頁中選擇「Microsoft Jet 4.0 OLE DB Provider」,然後點擊「下一步」按鈕,在「連接」頁中選擇要連接的Access資料庫的路徑和資料庫的文件名.如果資料庫沒有密碼,那就可以了,如果有密碼,這時如果點「測試連接」按鈕時,出現「初始化提供者時發生錯誤,測試連接失敗,密碼無效」的錯誤提示(看步驟4)。
4,這時點「所有」頁,然後雙擊「Jet OLEDB:Database Password」,出現對話框,添入密碼後,選擇「連接」頁中的「測試連接」按鈕,出現「測試連接成功」的對話框。
http://..com/question/16723147.html

設置AdoConnection控制項的LoginP。。(忘記怎麼寫了)屬性設置為false
這個屬性是設置連接資料庫時是否提示輸入用戶名和密碼的。

『貳』 delphi中如何配置資料庫連接

ADOConnection1.ConnectionString := 'DSN=MS Access Database;DBQ=mdb文件名;DefaultDir=預設工作路徑;DriverId=25;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;PWD=密碼;UID=admin;';

例如:Access文件為db.mdb,設置密碼為:hello,則:
ADOConnection1.ConnectionString := 'DSN=MS Access Database;DBQ=db.mdb;DefaultDir=;DriverId=25;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;PWD=hello;UID=admin;';

無密碼則為:
ADOConnection1.ConnectionString := 'DSN=MS Access Database;DBQ=db.mdb;DefaultDir=;DriverId=25;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;PWD=;UID=admin;';

『叄』 delphi動態設置資料庫連接

SQLConnection1.Params.clear
然後再添上你自己修改的值
SQLConnection1.Params.Values['ServerName'] := '192.168.0.112';
SQLConnection1.Params.Values['Database'] := 'trackData';
SQLConnection1.Params.Values['User_Name'] := 'sa';
SQLConnection1.Params.Values['Password'] := '123456';
SQLConnection1.Open;

『肆』 delphi中BDE如何連接資料庫

要這樣使用BDE的原生資料庫連接,你需要打開BDE
Administrator工具,在configuration頁里的Native節點上把DB2資料庫服務有關的參數進行設置,然後保存就可以了,在BDE
Administrator
面板把數據相關的內容設置好後,就可以用BDE組件進行連接

『伍』 Delphi中資料庫連接

假設你的資料庫名字為「我的資料庫.mdb」,你可以在form的OnCreat事件寫代碼

procere TForm1.FormCreate(Sender: TObject);
begin
ADOQuery1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+ExtractFilePath(ParamStr(0))+'我的資料庫.mdb;Persist Security Info=False';
end;

這樣系統就能自動連接可執行文件所在文件夾下的資料庫文件了

『陸』 誰在delphi中用過連接池

你做一個共享的連接池,程序初始化的時候把連接池連好,每次需要連接時創見個連接,從池子取出需要的連接
復制給新建連接,用完釋放新建連接即可。我見過別人寫的共享的連接池應用在資料庫+客戶端這種結構上,支持多線程!

『柒』 用delphi做的程序如何連接SQL資料庫應該怎麼操作

1. 新建一個FORM。在控制項欄找到ADO一欄,把裡面的ADOConnection和ADOQuery兩個各建立一個放在FORM里。這兩個控制項運行後是不可見的,所以你可以隨便放在FORM的任何位置。然後再找到DATA ACCESS一欄,把它下屬的DataSource控制項拖一個放到FORM里。用這三個控制項就可以建立連接了。

2.設置相關屬性,首先我們設置ADOConnection,這個控制項就是與數據連接的控制項。雙擊它彈出配置窗口,單擊BUILD..按鈕,出現資料庫鏈接屬性窗口,ACCESS資料庫就選擇有個JET4.0什麼的那個資料庫,如果是本地的資料庫可以在下拉列表選擇伺服器名稱或者自己直接輸入伺服器名稱(遠程的直接輸入IP即可),然後輸入登錄密碼和選擇資料庫。設置完成點擊測試連接,顯示成功說明鏈接正常,單擊完成退出設置。

3 ADOQuery這個控制項是用SQL操作資料庫的,在它的屬性欄有個connection屬性,點擊它的下拉菜單選擇剛剛建立好的ADOConnection1,DataSource控制項則是存放結果的地方,把它的DataSet屬性設置成ADOQuery1。這樣我們就可以通過調用ADOQuery來對資料庫進行操作了。

4 鏈接好資料庫以後就可以對資料庫進行操作了。最常見的用法是建立一個DBGRID,然後把他的connection屬性選成我們的Datasource1。如果你想預先設置好SQL語句的話,在ADOQUERY的左邊屬性欄里的SQL欄,點那個三個點的省略號輸入你想查詢的SQL語句。然後ACTIVE屬性設置成TRUE,這樣一運行,在DBGRID里就會顯示你的SQL查詢結果了。

『捌』 DELPHI中的資料庫連接

把ACCESS轉成SQL資料庫

很多朋友想用SQL2000資料庫的編程方法,但是卻又苦於自己是學ACCESS的,對SQL只是一點點的了解而已,這里我給大家提供以下參考---將ACCESS轉化成SQL2000的方法和注意事項
一,首先,我說的是在ACCESS2000,SQL2000之間轉換,其他的我也還沒有嘗試過,希望大家多多試驗,肯定是有辦法的;
二,轉換的方法
1,打開」控制面板「下」管理工具「中的」資料庫源「;
2,按」添加「添加一個新的數據源,在選擇欄里選」Driver do microsoft Access
(*.mdb)」,完成後將出現一個框,

在」資料庫源「裡面輸入你想寫的名稱,我取名叫「ABC」,說明不需要填,接著,按下面的選擇,尋找你的資料庫地址和選中(注意,請先備份自己的ACCESS資料庫),然後確定。
數據源在這里建好了,剩下轉換了。

3,打開SQL2000企業管理器,進入資料庫,新建一個空的資料庫「ABC」;
4,選擇新建立的資料庫,按滑鼠右鍵,選擇「所有任務」下「導入數據」,按「下一步」繼續;
5,在資料庫源下拉但中選擇」Driver do microsoft Access(*.mdb)「,在」用戶/系統DSN「中,選種你剛才添加的」ABC「,按 」下一步「;
6,「目的」不需要修改,選擇伺服器(一般下為自己的本機「local「,也可以選擇伺服器地址或者區域網地址,確定你的許可權是否可以操作,),「使用WINDOWS 身份驗證「指用自己的系統管理員身份操作,「使用SQL身份操作驗證「可以用於網站的操作,推薦用後者;
7,選上「使用SQL身份操作驗證「後,填寫你的用戶名和密碼,我自己選擇的是系統默認號碼「sa「,「****「,資料庫選擇剛新建的「ABC「,按「下一步「;
8,這一步的兩個單項選擇,「從數據源復製表和視圖「與「用一條查詢指令指定要傳輸的數據「,選擇前者,按「下一步「繼續;
9,這里將出現你自己ACCESS資料庫的表,按「全選「後,下一步;
10,「DTS導入/導出向導「,看「立即運行「被選中按「下一步「,
11,按「完成「繼續;
12,這個步驟你將看到你的數據被導入SQL2000裡面,當出現「已經成功把XXX個表導入到資料庫「的字樣,而且所有的表前面都有綠色的勾,就表示成功導入所有數據,如果中途出現問題或者表前面有紅色的叉的話,說明該表沒有成功導入,這時就要回去查看自己的操作是否正確了.

三,數據修改
1,由於SQL2000裡面沒有「自動編號「,所以你的以「自動編號「設置的欄位都會變成非空的欄位,這就必須手工修改這些欄位,並把他的「標示「選擇「是「,種子為「1「,增量為「1「,
2,另外,ACCESS2000轉換成SQL2000後,原來屬性為「是/否「的欄位將被轉換成非空的「bit「,這時候你必須修改成自己想要的屬性了;
3,另外,大家要注意對時間函數的把握.ACCESS與SQL是有很多不同的.

ACCESS改為SQL需要注意哪幾個地方

資料庫導入以後,自動增加欄位需要重寫,所有的數字類型需要增加長度,最好用decimal。

所有的默認值都丟失了。主要是數字類型和日期類型。

所有now(),time(),date()要改成getdate()。

所有datediff(『d『, time1, time2)要改成datediff(day, time1, time2)

有可能一些true/false類型不能使用,要變為1/0。

備注類型要通過cast(column as varchar)來使用。

CursorType要改成1,也就是打開資料庫時要給出第一個數字參數為1,否則記錄可能顯示不完整。

isnull(rowname)要改成rowname = null

ACCESS的資料庫中的自動編號類型在轉化時,sql server並沒有將它設為自動編號型,我們需在SQL創建語句中加上identity,表示自動編號!

轉化時,跟日期有關的欄位,SQL SERVER默認為smalldatetime型,我們最好將它變為datetime型,因為datetime型的范圍比smalldatetime型大。有時用smalldatetime型時,轉化失敗,而用datetime型時,轉化成功。

對此兩種資料庫進行操作的sql語句不全相同,例如:在對ACCESS資料庫進行刪除紀錄時用:「delete * from user where id=10「,而對SQL SERVER資料庫進行刪除是用:「delete user where id=10「.

日期函數不相同,在對ACCESS資料庫處理中,可用date()、time()等函數,但對SQL SERVER資料庫處理中,只能用datediff,dateadd等函數,而不能用date()、time()等函數。

在對ACCESS資料庫處理中,sql語句中直接可以用一些VB的函數,像cstr()函數,而對SQL SERVER資料庫處理中,卻不能用。

ACCESS轉SQL SERVER的資料庫的幾點經驗

1.ACCESS的資料庫中的自動編號類型在轉化時,sql server並沒有將它設為自動編號型,我們需在SQL創建語句中加上identity,表示自動編號!
2.轉化時,跟日期有關的欄位,SQL SERVER默認為smalldatetime型,我們最好將它變為datetime型,因為datetime型的范圍比smalldatetime型大。我遇見這種情況,用smalldatetime型時,轉化失敗,而用datetime型時,轉化成功。
3.對此兩種資料庫進行操作的sql語句不全相同,例如:在對ACCESS資料庫進行刪除紀錄時用:「delete * from user where id=10「,而對SQL SERVER資料庫進行刪除是用:「delete user where id=10「.
4.日期函數不相同,在對ACCESS資料庫處理中,可用date()、time()等函數,但對SQL SERVER資料庫處理中,只能用datediff,dateadd等函數,而不能用date()、time()等函數。
5.在對ACCESS資料庫處理中,sql語句中直接可以用一些VB的函數,像cstr()函數,而對SQL SERVER資料庫處理中,卻不能用。

『玖』 Delphi如何與SQL資料庫連接

connstr:='Provider=SQLOLEDB.1;Password=<sql
的用戶ID的登錄密碼>;Persist
Security
Info=True;User
ID=<sql
的用戶ID>;Initial
Catalog=<資料庫名稱>;Data
Source=<sql
伺服器名稱或IP地址>『;
ADO下的ADOConnection控制項
ADOConnection1.connectstring:=connstr;
Adoquery1.connect

ADOConnection1
Adoquery1.sql.clear;
Adoquery1.sql.add('select
*
from
表名
');
Adoquery1.open;