亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        用Delphi的ADO組件建立動態(tài)數(shù)據(jù)庫連接

        2018-01-03 12:34:50柴鎖柱柴華
        山東工業(yè)技術(shù) 2018年24期
        關(guān)鍵詞:數(shù)據(jù)庫

        柴鎖柱 柴華

        摘 要:在使用Delphi自帶的ADO組件開發(fā)Access數(shù)據(jù)庫應(yīng)用程序時,會遇到由于程序存放路徑不同導(dǎo)致數(shù)據(jù)庫不能正常連接,致使程序不能正常運行,此問題采用動態(tài)鏈接Access數(shù)據(jù)庫的方法可以解決;結(jié)合具體代碼闡述了用ADO組件動態(tài)鏈接Access加密數(shù)據(jù)庫的方法和關(guān)鍵技術(shù),使得應(yīng)用程序可以任何路徑都能正常運行。

        關(guān)鍵詞:Delphi;數(shù)據(jù)庫;Access;ADO組件

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

        1 引言

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

        2 ADO組件

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

        3 用ADO組件連接Access數(shù)據(jù)庫

        結(jié)合具體代碼闡述使用ADO組件連接并訪問加密Access數(shù)據(jù)庫的方法步驟及關(guān)鍵技術(shù)要點。

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

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

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

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

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

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

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

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

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

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

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

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

        4 關(guān)鍵技術(shù)問題

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

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

        5 結(jié)束語

        實踐證明,在Delphi 中使用ADO組件開發(fā)Access數(shù)據(jù)庫應(yīng)用程序,給Access數(shù)據(jù)庫加密,可以有效防止用戶直接通過Access軟件修改修據(jù)庫而造成數(shù)據(jù)庫損壞;動態(tài)修改ADOConnection1組件的ConnectionString屬性,以實現(xiàn)動態(tài)連接數(shù)據(jù)庫,使應(yīng)用程序可以在不同環(huán)境下運行。串口通信程序,在Delphi 7中使用ADO組件開發(fā)Access數(shù)據(jù)庫應(yīng)用程序,具有簡單方便、開發(fā)效率高的特點,結(jié)合Delphi的第三方組件CPort串口組件已經(jīng)在綜合項目的開發(fā)中得到應(yīng)用[3],應(yīng)用效果令人滿意。在Delphi 中利用ADO組件開發(fā)Access數(shù)據(jù)庫應(yīng)用程序的方法,對開發(fā)Delphi應(yīng)用程序?qū)嵺`具有一定的指導(dǎo)意義。

        參考文獻(xiàn):

        [1]柴鎖柱.基于RS485的倉房糧溫監(jiān)控網(wǎng)絡(luò)通信系統(tǒng)[J].滄州師范學(xué)院學(xué)報,2014,30(01):69-72.

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

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

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

        猜你喜歡
        數(shù)據(jù)庫
        數(shù)據(jù)庫
        財經(jīng)(2017年15期)2017-07-03 22:40:49
        數(shù)據(jù)庫
        財經(jīng)(2017年2期)2017-03-10 14:35:35
        兩種新的非確定數(shù)據(jù)庫上的Top-K查詢
        數(shù)據(jù)庫
        財經(jīng)(2016年15期)2016-06-03 07:38:02
        數(shù)據(jù)庫
        財經(jīng)(2016年3期)2016-03-07 07:44:46
        數(shù)據(jù)庫
        財經(jīng)(2016年6期)2016-02-24 07:41:51
        數(shù)據(jù)庫
        財經(jīng)(2015年3期)2015-06-09 17:41:31
        數(shù)據(jù)庫
        財經(jīng)(2014年21期)2014-08-18 01:50:18
        數(shù)據(jù)庫
        財經(jīng)(2014年6期)2014-03-12 08:28:19
        數(shù)據(jù)庫
        財經(jīng)(2013年6期)2013-04-29 17:59:30
        日本超级老熟女影音播放| 自拍欧美日韩| 亚洲中文字幕无码永久在线| 两个人看的www中文在线观看| 国产高潮流白浆免费观看不卡 | 最近中文字幕视频高清| 国产一区二区精品久久凹凸| 精品人妻一区二区视频| 无码av专区丝袜专区| 久久综合九色综合欧美狠狠| 久久精品人妻一区二区三区| 九九在线精品视频xxx| 91国产精品自拍视频| 成人艳情一二三区| 国产超碰女人任你爽| 天天天天躁天天爱天天碰| 日日摸夜夜欧美一区二区| 国产精品久久这里只有精品| 国产偷拍盗摄一区二区| 一区二区国产av网站| 国产乱国产乱老熟300部视频 | 国产超碰人人爽人人做人人添| 国语精品一区二区三区| 国产成人乱色伦区小说| 亚洲一区二区三区免费av在线| 精品中文字幕在线不卡| 久久不见久久见www日本网| 曰批免费视频播放免费直播| 产国语一级特黄aa大片| 一本到亚洲av日韩av在线天堂| 黄射视频在线观看免费| 中文字幕久久久人妻无码| 美日韩毛片| 国产高清不卡在线视频 | 加勒比色老久久爱综合网| 无码综合天天久久综合网| 亚洲毛片网| 黑丝美女被内射在线观看| 色婷婷一区二区三区久久亚洲| 亚洲av国产av综合av卡| 亚洲的天堂av无码|