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

基于ODAC 的數據庫應用系統的開發

2021-09-10 03:50:57賈麗杰
油氣·石油與天然氣科學 2021年7期

摘要:比較了Delphi中應用ODAC和BDE兩種方式連接Oracle的不同,介紹了基于ODAC方式的數據庫應用系統的開發方法,并給出了Delphi中應用ODAC開發數據庫管理系統的幾個細節。

關鍵詞: ODAC ?BDE ?控件 ?Delphi

前言:隨著網絡知識的普及和數據庫技術的發展,如今的軟件編程技術已經從單機版本向網絡化、對象化發展,網絡化編程技術是現代計算機技術的一個主要發展方向。應用這項技術,我們可以將現在油田中的一些應用軟件移植到網絡上,這樣只要擁有可以上網的計算機,我們就能夠在任何時候、任何地方利用網絡上的任何應用軟件進行工作,這將擴大我們的辦公空間。在油田生產中我們需要處理大量的數據,而且我們大部分數據是共享的,因此在油田中開發出基于網絡的數據庫應用軟件是我們軟件開發者的一個研究方向和軟件編制工作的重點。

一、BDE與ODAC的簡介

BDE(Borland Database Engine)數據庫引擎是Delphi數據庫應用程序和數據資源的橋梁,BDE提供了一套簡單的統一的接口。因為應用程序安裝時需要安裝BDE,所以應用BDE方式存取數據時的安裝工作比較麻煩;在基于Oracle的客戶/服務器應用程序中,使用BDE不能夠獲得服務器的特殊特征,不能使用更多的系統資源,降低數據處理速度、發布和管理程序繁瑣。

Oracle Data Access Components(ODAC)是存取Oracle數據庫的一組非可視化的組件。ODAC直接使用Oracle調用接口(OCI)。該接口以動態運行庫的方式提供一個標準數據庫訪問和取回函數庫,它能夠被鏈接到應用程序中。

二、ODAC數據存取組件的優勢

* 直接訪問Oracle數據,不需要分發、安裝和配置BDE和ODBC。

* 采用NET方式時,不需要安裝和管理 Oracle 客戶端軟件。

* 極高速的數據存取,高性能地控制拿取大數據塊。

* 自動化地更新數據,自動化地數據鎖住和刷新。

* 編譯成的應用程序非常小,將應用程序安裝到其它計算機的過程非常簡單。

* 支持 Oracle的特殊特性: BLOB、CLOB 數據類型,對象,數組,引用,嵌套表。

三、技術實現

數據庫管理系統共包括數據瀏覽、存儲和打印三個模塊。在該系統中,我們采用的是ODAC的NET方式,這樣應用程序可以直接通過TCP/IP協議來連接Oracle數據庫,而不需要安裝Oracle客戶端,使安裝工作更簡單。

1、數據瀏覽模塊

在該模塊中,我們將Oacle數據庫中的表、表的字段設計成可選的,用戶可根據自己的需要選擇要瀏覽的表及表中的字段;也可以自己輸入條件,選取表中部分數據。在該模塊中我們應用的是TOraSession 和ToraQuery兩個控件,前者用來控制服務連接,后者用來執行查詢,操作記錄集。

首先,要配置Oracle數據庫,要給出Oracle服務器的地址、偵聽端口號和數據庫名字。配置數據庫的語句如下:

Oras.ConnectString:=syn_u+'/'+syn_p+'@'+server_ip+'::'+db_str;

Oras.ConnectPrompt := False; ? ? ? Oras.Options.Net := True;

Oras.Connect;

查詢時,將SQL語句輸入到ToraQuery的SQL屬性中,將其session屬性設置為oras就可以連接數據庫執行SQL語句對數據庫中的數據進行相應的操作了。其使用方法如下:

if oraq_out.Active then ? ? ? oraq_out.Close;

oraq_out.Session:=oras; ? ? ? ?oraq_out.SQL.Clear;

oraq_out.SQL.Add(sqlstring); ? ? ? ?oraq_out.Open;

2、數據存儲模塊

該模塊分為兩個部分,一個是將Oracle數據庫中的數據轉存為Dbase數據庫表,第二部分是將相同結構的Dbase單機數據向Oracle的數據轉換。在將Oracle數據庫中的數據轉存為Dbase數據庫表時,我們設計的也是表及表中字段可選。連接Dbase數據庫我們使用的Delphi中TTable控件。在這里,我們是動態的創建這個控件,動態的建立的Dbase數據庫表 。程序代碼如下:

tablec:=ttable.Create(self); ?tablec.Active:= false;

tablec.TableName:=tablename; ?tablec.TableType:=ttfoxpro;

tablec.DatabaseName:=tablepath; ?tablec.FieldDefs.Clear;

while not oraquery1.Eof do ? begin

if oraquery1.FindField('DATA_TYPE').AsString = 'CHAR' then

tablec.FieldDefs.Add ? ? ? ? ? ? ? ? (oraquery1.fieldbyname('COLUMN_NAME').asstring, ? ? ? ? ? ? ? ? ftstring,oraquery1.fieldbyname('DATA_LENGTH').asinteger, ? ? ? ? ? ? ?false) ? ? else if oraquery1.FindField('DATA_TYPE').AsString = 'NUMBER'

then ? ? ? ? ? ? ? ? ? ? ? ? BEGIN

…… ? ? ? ? ? ? ? ? ? ? ? ?END;

oraquery1.Next; ?end; ? tablec.CreateTable;

四、 結論

采用ODAC使得連接、操縱數據庫更加方便、容易,能夠適應油田生產中處理大量數據的需要。應用ODAC技術開發的數據庫應用程序,與用戶之間具有良好的交互性,響應迅速,能夠達到日常工作的基本要求。采用ODAC技術訪問數據庫能夠減輕數據庫服務器的負載,提高數據庫的執行效率。ODAC技術在數字化油田中有著廣闊的應用前景,為我們早日實現辦公網絡化提供了更為可靠的技術保障。

作者簡介:

賈麗杰 :女,1990年08月21日出生, 2012年畢業于黑龍江八一農墾大學計算機科學與技術專業,現在大慶油田第五采油廠信息中心信息情報室工作; Email:jlj@petrochina.com.cn黑龍江省大慶市郵編:163000

主站蜘蛛池模板: 91精品视频在线播放| 青青青国产精品国产精品美女| 极品av一区二区| 一本大道无码高清| 中文字幕亚洲精品2页| 青青操视频在线| 91外围女在线观看| 黄网站欧美内射| 久久中文电影| 老司机午夜精品网站在线观看| 国产成人高清精品免费软件| 露脸一二三区国语对白| 激情无码字幕综合| 456亚洲人成高清在线| 99久久精品视香蕉蕉| 国产又粗又爽视频| 99在线观看免费视频| 亚洲第一国产综合| 亚洲日韩精品无码专区97| 亚洲AV无码久久精品色欲| 18禁高潮出水呻吟娇喘蜜芽| 久久久久国产一区二区| 免费人成在线观看视频色| 四虎在线高清无码| 欧美精品v日韩精品v国产精品| 永久免费精品视频| 国产精品无码AV中文| 精品福利国产| 国产视频入口| 亚洲第一成网站| 成人伊人色一区二区三区| 在线国产三级| 日韩精品一区二区深田咏美| 亚洲欧美自拍中文| 最新国产午夜精品视频成人| 国产人妖视频一区在线观看| 亚洲成人播放| 第九色区aⅴ天堂久久香| 狠狠色综合久久狠狠色综合| 免费啪啪网址| 日韩第九页| av一区二区三区高清久久| 亚洲天堂网在线观看视频| 这里只有精品国产| 91亚瑟视频| AV在线天堂进入| 成人福利免费在线观看| 中文字幕在线一区二区在线| 国产精品熟女亚洲AV麻豆| 成人在线不卡视频| 国产精女同一区二区三区久| 波多野结衣无码视频在线观看| 永久免费av网站可以直接看的 | 亚洲日韩高清在线亚洲专区| 欧美亚洲日韩不卡在线在线观看| 99久视频| 国产成人禁片在线观看| 国产精品妖精视频| 无码av免费不卡在线观看| 国产精品思思热在线| 欧美日本在线观看| 国产精品美女自慰喷水| 亚洲男人天堂2018| 69精品在线观看| 毛片网站在线看| 国产综合日韩另类一区二区| 欧美日韩va| 国产精品视频a| 国产又粗又爽视频| 欧美日韩中文国产| 国产日韩欧美黄色片免费观看| 色婷婷亚洲综合五月| 激情乱人伦| 国产三区二区| 伊人久久大香线蕉aⅴ色| 国产久草视频| 欧美精品啪啪| 国产性生交xxxxx免费| 少妇精品网站| 中文字幕久久波多野结衣 | 国产日本一线在线观看免费| av免费在线观看美女叉开腿|