999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

用Delphi的ADO組件建立動態數據庫連接

2018-01-03 12:34:50柴鎖柱柴華
山東工業技術 2018年24期
關鍵詞:數據庫

柴鎖柱 柴華

摘 要:在使用Delphi自帶的ADO組件開發Access數據庫應用程序時,會遇到由于程序存放路徑不同導致數據庫不能正常連接,致使程序不能正常運行,此問題采用動態鏈接Access數據庫的方法可以解決;結合具體代碼闡述了用ADO組件動態鏈接Access加密數據庫的方法和關鍵技術,使得應用程序可以任何路徑都能正常運行。

關鍵詞:Delphi;數據庫;Access;ADO組件

DOI:10.16640/j.cnki.37-1222/t.2018.24.100

1 引言

數據庫已被廣泛應用在各種管理系統中,例如用在倉房糧溫監控系統中已得到應用[1]。數據庫系統的種類很多,大型數據庫如MSSQL Sever、Oracle,小型數據庫如Access,在應用中應根據需要選擇合適的數據庫。開發數據庫應用程序的工具有很多,如VB、VC和Delphi等,其中Delphi是由Borland公司推出的可視化集成開發環境,是一種方便、快捷的Windows應用程序開發工具,具有簡單、高效和功能強大的特點,采用基于窗體和面向對象程序設計的方法,具有強大的數據庫支持,用組件庫封裝了豐富的Windows操作,適合開發數據庫方面的應用程序,支持多種數據庫結構,從客戶機/服務器模式到多層數據庫結構模式,先進的數據庫引擎,高效的數據分析手段和提供大量的企業組件,采用Delphi開發數據庫應用程序成為許多程序員的選擇。在應用程序開發過程中,使用TADOConnection組件連接已經設計好的Access數據庫既方便又快捷,但是會遇到一些問題:(1)一般在編程時TADOConnection組件的ConnectionString屬性已經確定,當將程序移植到其它計算機運行時,由于環境的改變會導致程序無法正常運行;(2)用戶可以通過Mircosoft Access軟件直接操作數據庫,這可能造成數據庫的破壞。為了解決第二個問題,需要對數據庫加密;為了解決第一個問題,應用程序需要動態修改TADOConnection組件的ConnectionString屬性,對加密的數據庫進行連接。以Access數據庫為例,闡述使用Delphi的ADO組件開發數據庫應用程序的方法、步驟和關鍵問題,以完成對數據庫的訪問和操作。

2 ADO組件

ADO(ActiveX Data Object)是微軟公司推出的一套數據庫訪問規范。它使應用程序能夠通過一種稱為OLE DB提供者(OLE DB Provider)的驅動程序訪問和操作數據庫。而OLE DB 是一個基于COM的數據庫訪問規則和API函數的集合,并經過了簡化。ADO以ActiveX的形式封裝了OLE DB,以提供一個更加友好方便的使用方式。使用ADO的好處,一是速度快,占用內存少,因為它直接使用API函數;二是支持基于Web應用開發;三是支持RDS(Remote Data Service),即首先將數據從服務器移動到客戶端或Web頁上,等到在客戶端或Web頁上將數據修改后,再將數據回傳到服務器上。Delphi 7開發工具自帶ADO組件[2],為連接多種數據庫提供了方便快捷的方法,這些組件可以分為兩大類:連接類型和訪問類型。ADO連接組件TADOConnection屬于連接類型,用來建立一個數據庫連接,為訪問類型的ADO組件提供數據庫連接,修改TADOConnection組件的ConnectionString屬性可以連接不同的數據庫。這樣ADO數據集組件就可以通過ADO連接組件訪問數據庫中的數據表。

3 用ADO組件連接Access數據庫

結合具體代碼闡述使用ADO組件連接并訪問加密Access數據庫的方法步驟及關鍵技術要點。

(1)創建一個文件夾,命名為“project”,用來存放項目的源代碼;在“project” 文件夾下創建子文件夾,命名為“DataBase”,用于存放Access數據庫。

(2)用Access創建一個數據庫,命名為“db1.mdb”,保存在DataBase文件夾中;對db1.mdb數據庫加密,假設密碼為“123456”,創建數據表,命名為“Table1”,為數據表添加字段并添加數據,不再贅述。

(3)打開Delphi集成開發環境,創建一個工程保存在project文件夾下,項目命名為“project1”;新建窗體命名為“Form1”。

(4)在窗體Form1上添加TADOConnection組件,命名為“ADOConnection1

”,TADOConnection組件為Delphi自帶的組件,用于連接數據庫。需要修改TADOConnection組件的ConnectionString屬性,以指定需要連接的數據庫。 ADOConnection1的LoginPrompt屬性設置為“False”,使得程序運行時不再出現數據庫登錄窗口。因為ConnectionString屬性需要在程序運行過程中設置,所以ADOConnection1的Connected屬性設置為“False”。

(5)在窗體Form1上添加TADOQuery組件,命名為“ADOQuery1”

,TADOQuery組件為Delphi自帶的組件,用來訪問數據表,為TDataSource組件提供數據集。需要修改ADOQuery1的SQL屬性以訪問數據庫中的數據表,修改ADOQuery1的Connection屬性以連接數據庫。因為還沒有連接數據庫,所以ADOQuery1的Active屬性設置為“False”。ADOQuery1的SQL屬性設置為“select * from table1”。ADOQuery1的Connection屬性設置為“ADOConnection1”。

(6)在窗體Form1上添加TDataSource組件,命名為“DataSource1”

,TDataSource組件為Delphi自帶的組件,為DBGrid1提供數據源。需要修改DataSource1的DateSet屬性。DataSource1的DateSet屬性設置為“ADOQuery1”。

(7)在窗體Form1上添加TDBGrid組件,命名為“DBGrid1”,TDBGrid組件為Delphi自帶的組件,用于顯示數據。需要修改DBGrid1的DataSource屬性,設置為DataSource1。

(9)編譯并運行應用程序,可以正常訪問數據庫顯示數據表的記錄信息。

(10)將project1.exe文件和DataBase文件夾一起復制,粘貼到另外機器的任何一個文件夾下測試,能夠正常運行。

4 關鍵技術問題

(1)創建Access數據庫后設置密碼,可以防止用戶Access軟件打開數據庫文件,避免了因用戶使用Access軟件直接修改數據庫而造成數據被損壞的情況發生。

(2)使用程序代碼修改ADOConnection1組件的ConnectionString屬性,主要是采用相對路徑訪問數據庫,指定數據庫訪問的密碼。為了使開發的應用程序能夠在不同機器不同路徑下都能運行,對數據庫進行訪問可以采用相對路徑的方法,程序代碼參見'DataBase\db1.mdb;'這一部分。

5 結束語

實踐證明,在Delphi 中使用ADO組件開發Access數據庫應用程序,給Access數據庫加密,可以有效防止用戶直接通過Access軟件修改修據庫而造成數據庫損壞;動態修改ADOConnection1組件的ConnectionString屬性,以實現動態連接數據庫,使應用程序可以在不同環境下運行。串口通信程序,在Delphi 7中使用ADO組件開發Access數據庫應用程序,具有簡單方便、開發效率高的特點,結合Delphi的第三方組件CPort串口組件已經在綜合項目的開發中得到應用[3],應用效果令人滿意。在Delphi 中利用ADO組件開發Access數據庫應用程序的方法,對開發Delphi應用程序實踐具有一定的指導意義。

參考文獻:

[1]柴鎖柱.基于RS485的倉房糧溫監控網絡通信系統[J].滄州師范學院學報,2014,30(01):69-72.

[2]張大年,廖智勇,劉劍鋒.Delphi數據庫應用開發技術與實例[M].2002(01):428-472.

[3]柴鎖柱,柴華.在Delphi中用CPort組件開發串口通信程序[J].內江科技,2015(05):49-50.

作者簡介:柴鎖柱(1963-),男,河北滄州人,本科,教授,研究方向:嵌入式系統和計算機控制技術。

猜你喜歡
數據庫
數據庫
財經(2017年15期)2017-07-03 22:40:49
數據庫
財經(2017年2期)2017-03-10 14:35:35
兩種新的非確定數據庫上的Top-K查詢
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
數據庫
財經(2015年3期)2015-06-09 17:41:31
數據庫
財經(2014年21期)2014-08-18 01:50:18
數據庫
財經(2014年6期)2014-03-12 08:28:19
數據庫
財經(2013年6期)2013-04-29 17:59:30
主站蜘蛛池模板: 亚洲无码电影| 亚洲精品成人片在线播放| 自拍欧美亚洲| 成人综合在线观看| 亚洲第一天堂无码专区| 精品无码视频在线观看| 91精品国产自产在线老师啪l| 91色在线视频| 日韩精品欧美国产在线| 国产综合网站| 日本手机在线视频| 国产爽爽视频| 午夜色综合| 在线观看国产小视频| 欧美色视频网站| 欧美啪啪一区| 国产男女免费完整版视频| 日韩东京热无码人妻| 精品综合久久久久久97超人| 美女裸体18禁网站| 免费AV在线播放观看18禁强制| 国产va在线| 91精品最新国内在线播放| 亚洲国产精品无码久久一线| 国产成人a在线观看视频| www.av男人.com| 亚洲一级无毛片无码在线免费视频 | 亚洲成肉网| 在线一级毛片| 欧美性猛交xxxx乱大交极品| 免费人成在线观看成人片| 国产91小视频| 日韩精品欧美国产在线| 久久久噜噜噜久久中文字幕色伊伊| 99在线观看国产| 亚洲精品中文字幕午夜| 久久伊人久久亚洲综合| 国产欧美日韩视频怡春院| 内射人妻无码色AV天堂| 人妻一本久道久久综合久久鬼色| 亚欧成人无码AV在线播放| 欧美高清日韩| 99精品伊人久久久大香线蕉| 草草影院国产第一页| 国产综合日韩另类一区二区| 91在线视频福利| 国产麻豆精品久久一二三| 亚洲精品卡2卡3卡4卡5卡区| 精品国产中文一级毛片在线看| 色综合天天综合中文网| 亚洲精品成人7777在线观看| 国产在线拍偷自揄拍精品| 成人另类稀缺在线观看| 一级不卡毛片| 国产一级二级在线观看| 无码'专区第一页| 91香蕉国产亚洲一二三区 | 99热这里都是国产精品| 国产福利2021最新在线观看| 波多野结衣中文字幕一区二区| 国产精品自拍合集| 亚洲欧美日韩成人在线| 亚洲天堂免费在线视频| 国产精品美女自慰喷水| 亚洲天堂伊人| 亚洲国产高清精品线久久| 在线日韩一区二区| 国产国产人成免费视频77777| 免费视频在线2021入口| 亚洲成人黄色网址| 亚洲无码高清免费视频亚洲| 欧美a级完整在线观看| 国产黄网站在线观看| 国产毛片高清一级国语| 亚洲国产欧美目韩成人综合| 精品国产电影久久九九| 亚洲国产欧美目韩成人综合| 日韩AV无码一区| 欧美一级99在线观看国产| 韩日无码在线不卡| 亚洲欧洲美色一区二区三区| 亚洲嫩模喷白浆|