在我做好學生管理系統時,發現要使用本軟體必須設定資料庫的資料來源。於是我就想弄個脫離資料來源的版本。
構造思想:
650) this.width=650;" src="http://www.bkjia.com/uploads/allimg/131228/22345a634-0.jpg" title="datafile.jpg" />
在con1的connectionstring有連結資料庫檔案作為資料來源的做法,那麼我們可以用資料庫檔案配置資料來源。
於是百度了一下Data Source = 資料來源路徑。而student資料來源在註冊表中註冊過,student資料來源名稱等價於路徑。
思路:
第一步:馬上想到要獲得資料庫所在的絕對路徑。
第二步:代碼編寫ConnectionString,Provider要寫完整資料提供者的驅動名稱(如
Provider=Microsoft.Jet.OleDb.4.0ACCESS資料引擎)
),而Data Source寫為絕對路徑。
技術關鍵:
1.獲得程式所在目錄,構造絕對路徑:
sDBPath = extractFilepath(application.ExeName)+'dataname.mdb';
2.con1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' + sDBPath +';';
步驟:
一:有這麼一個介面
650) this.width=650;" src="http://www.bkjia.com/uploads/allimg/131228/2234591315-1.jpg" title="form.jpg" />
二、 先修改con1的屬性
650) this.width=650;" src="http://www.bkjia.com/uploads/allimg/131228/2234595593-2.jpg" title="connect.jpg" />
修改adoquery的屬性
650) this.width=650;" src="http://www.bkjia.com/uploads/allimg/131228/2234592c4-3.jpg" title="query.jpg" />
在form2添加onActivate事件視窗啟用事件)代碼如下,
procedure TForm2.FormActivate(Sender: TObject); var sDBPath : string;begin sDBPath := extractFilepath(application.ExeName) + 'students.mdb'; ADOQuery1.Active := false; con1.Connected := false; ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add('select * from admins'); //這句看視窗剛剛建立是否要資料庫而定要寫不寫。 //User ID=Admin;資料庫有使用者名稱的相應的加上 //填寫connectionstring con1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' + sDBPath +';'; con1.Connected := true; ADOQuery1.Active := true;end;
這樣就完成資料庫脫離資料來源的配置。
範例代碼 http://pan.baidu.com/share/link?shareid=187085761&uk=2065228996
本文出自 “lilin9105” 部落格,請務必保留此出處http://7071976.blog.51cto.com/7061976/1220029