亚洲免费人人妻人人,cao78在线视频,福建一级毛片,91精品视频免费观看,高清另类图片操逼,日本特黄特色大片免费看,超碰欧美人人澡曰曰澡夜夜泛

淺論基于Delphi的數(shù)據(jù)庫(kù)開發(fā)論文

時(shí)間:2024-10-27 15:19:46 論文范文 我要投稿
  • 相關(guān)推薦

淺論基于Delphi的數(shù)據(jù)庫(kù)開發(fā)論文

  摘 要:詳細(xì)分析了delphi下應(yīng)用數(shù)據(jù)庫(kù)的方法。Delphi下的數(shù)據(jù)庫(kù)開發(fā)有著很強(qiáng)的優(yōu)勢(shì),這里對(duì)其進(jìn)行了總結(jié),對(duì)delphi的訪問組件和數(shù)據(jù)操作組件進(jìn)行了詳細(xì)的分析。給出了一個(gè)實(shí)例來進(jìn)行說明。

淺論基于Delphi的數(shù)據(jù)庫(kù)開發(fā)論文

  關(guān)鍵詞:delphi;數(shù)據(jù)庫(kù);ODBC;面向?qū)ο?/p>

  引言

  目前為止計(jì)算機(jī)軟件開發(fā)分為兩個(gè)不同的體系,一個(gè)體系是使用傳統(tǒng)的程序設(shè)計(jì)語言(如Pascal、Basic和C等)開發(fā)數(shù)值控制、數(shù)值運(yùn)算等軟件。另一個(gè)體系則是通用的數(shù)據(jù)庫(kù)管理軟件領(lǐng)域(數(shù)據(jù)庫(kù)應(yīng)用程序的開發(fā))。數(shù)據(jù)庫(kù)系統(tǒng)為我們提供了一種把與我們的工作和生活緊密相關(guān)的信息集合在一起的方法,它還提供了在某個(gè)集中的地方存儲(chǔ)和維護(hù)這些信息的方法。數(shù)據(jù)庫(kù)系統(tǒng)主要由三大部分組成:數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS:它是專門負(fù)責(zé)組織和管理數(shù)據(jù)信息的程序)、 數(shù)據(jù)庫(kù)應(yīng)用程序(它使我們能夠獲取、顯示和更新由DBMS存儲(chǔ)的數(shù)據(jù))、數(shù)據(jù)庫(kù)(按一定結(jié)構(gòu)組織在一起的相關(guān)數(shù)據(jù)的集合)。

  1  delphi數(shù)據(jù)庫(kù)開發(fā)

  Delphi中處理數(shù)據(jù)庫(kù)主要有兩種方法,也就是BDE、ADO,從Delphi 6.0開始還加入了一種dbExpress方法。Delphi還提供了專門處理Borland 公司自己的數(shù)據(jù)庫(kù)產(chǎn)品InterBase 數(shù)據(jù)庫(kù)的專門的方法。

  BDE(Borland Databas Engine),是Delphi中最古老的技術(shù),從delphi 2.0加入BDE 技術(shù)以后,一直是Delphi處理數(shù)據(jù)庫(kù)的事實(shí)上的標(biāo)準(zhǔn)。BDE 是一個(gè)基于驅(qū)動(dòng)程序的體系結(jié)構(gòu),每一種數(shù)據(jù)格式或數(shù)據(jù)源都有一種驅(qū)動(dòng)程序來驅(qū)動(dòng)相近的數(shù)據(jù)源。BDE 可以很好的支持現(xiàn)在最流行的ODBC API方法,ODBC是一種C/C++ 應(yīng)用程序編程接口(API ),無論是對(duì)任何一種客戶/ 服務(wù)器關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS ),還是最流行索引順序訪問方法(ISAM)數(shù)據(jù)庫(kù)(Jet、Foxpro)都能很好的訪問。

  ADO 技術(shù)是微軟提出來的處理關(guān)系型數(shù)據(jù)庫(kù)和非關(guān)系型數(shù)據(jù)庫(kù)的新技術(shù),它基于微軟被稱為OLE DB的數(shù)據(jù)訪問模式,它是專門為了給大范圍商業(yè)數(shù)據(jù)源提供訪問而設(shè)計(jì)的,包括傳統(tǒng)的關(guān)系型數(shù)據(jù)表、電子郵件系統(tǒng)、圖形格式、Internet資源等。ADO 所需內(nèi)存更少,更適合大流量和大事務(wù)量的網(wǎng)絡(luò)計(jì)算機(jī)系統(tǒng)。

  2 delphi數(shù)據(jù)庫(kù)開發(fā)優(yōu)勢(shì)

  如果使用數(shù)據(jù)庫(kù)語言進(jìn)行傳統(tǒng)的算術(shù)編程,雖然也能完成相應(yīng)的功能,但是其編程過程可能極為復(fù)雜。如果使用傳統(tǒng)的編程語言進(jìn)行數(shù)據(jù)庫(kù)編程,通過調(diào)用專用的數(shù)據(jù)庫(kù)應(yīng)用程序接口函數(shù)和過程,利用這些函數(shù)和過程提供的功能,可能也能做得比較完善,但這做起來大多是極其困難的。而Delphi結(jié)合了兩個(gè)體系的優(yōu)點(diǎn),它結(jié)合了傳統(tǒng)的編程語言O(shè)bject Pascal和數(shù)據(jù)庫(kù)語言的強(qiáng)大功能,它即可以用于傳統(tǒng)的算術(shù)編程又可以用于數(shù)據(jù)庫(kù)編程,特別是Delphi具有強(qiáng)大的數(shù)據(jù)庫(kù)功能,利用Delphi的數(shù)據(jù)庫(kù)工具,我們根本不需要編寫任何Object Pascal代碼便可以創(chuàng)建一個(gè)簡(jiǎn)單的數(shù)據(jù)庫(kù)應(yīng)用。

  3 Delphi數(shù)據(jù)庫(kù)常用組件

  3.1數(shù)據(jù)訪問組件

  Table、Query和Storedproc三個(gè)組件也稱為數(shù)據(jù)集組件,用于和數(shù)據(jù)庫(kù)連接,可將這些組件視為數(shù)據(jù)庫(kù),對(duì)它們的操作就可認(rèn)為是對(duì)數(shù)據(jù)庫(kù)的操作。

  DataSource組件是數(shù)據(jù)集組件和數(shù)據(jù)控制組件的連接媒介。數(shù)據(jù)控制組件是用戶操作數(shù)據(jù)庫(kù)中數(shù)據(jù)的界面,只有通過DataSource才能和數(shù)據(jù)集組件連接,從而獲得數(shù)據(jù)用來進(jìn)行顯示、修改等操作。

  ?Query組件是利用結(jié)構(gòu)化查詢語言(Structured Query Language)通過 BDE來操作數(shù)據(jù)庫(kù)的,采用SQL來實(shí)現(xiàn)。

  Storedproc組件是通過 BDE對(duì)服務(wù)器數(shù)據(jù)庫(kù)進(jìn)行操作的,常用于客戶/服務(wù)器結(jié)構(gòu)的數(shù)據(jù)庫(kù)應(yīng)用程序。

  DataBase組件一般用于建立遠(yuǎn)程的數(shù)據(jù)庫(kù)服務(wù)器--客戶/服務(wù)器結(jié)構(gòu)的數(shù)據(jù)庫(kù)應(yīng)用程序和數(shù)據(jù)庫(kù)之間的連接。

  Session組件是用于控制數(shù)據(jù)庫(kù)應(yīng)用程序和數(shù)據(jù)庫(kù)連接的,主要用于復(fù)雜的功能,比如多線程數(shù)據(jù)庫(kù)程序編程。

  BatchMove組件 用于大批數(shù)據(jù)的轉(zhuǎn)移、復(fù)制等。

  UpdateSQL組件專用于只讀數(shù)據(jù)庫(kù),用于緩存數(shù)據(jù)庫(kù)的更新。

  3.2數(shù)據(jù)控制組件

  數(shù)據(jù)控制組件也可稱為數(shù)據(jù)顯示組件或數(shù)據(jù)瀏覽組件。它們的主要功能是和數(shù)據(jù)訪問組件配合供用戶對(duì)數(shù)據(jù)進(jìn)行瀏覽、編輯等操作。數(shù)據(jù)控制組件在組件板上的DataControl頁(yè)上,共有15個(gè)組件。它們分別是: DBGrid組件、DBNavigator組件、DBText組件、DBEdit組件、DBMemo組件、DBImage組件、DBListbox組件、DBComboBox組件、DBCheckBox組件、DBRadioGroup組件、DBLookupListBox組件、DBLookupComboBox組件、DBRichEdit組件、DBCtrlGrid組件、DBChart組件。另外還有一些組件與數(shù)據(jù)庫(kù)有關(guān)。Decision Cube是一組主要用于統(tǒng)計(jì)的組件,可以表格或圖形等直觀的方式表達(dá)統(tǒng)計(jì)結(jié)果,不過,似乎應(yīng)用的不是很廣泛。QReport 組件是用來最后輸出報(bào)表的組件。

  4 delphi下數(shù)據(jù)庫(kù)應(yīng)用例子

  下面以一個(gè)簡(jiǎn)單的例子演示delphi下數(shù)據(jù)庫(kù)的應(yīng)用。在Form1.FormCreate事件中寫入如下代碼,程序啟動(dòng)時(shí),將自動(dòng)檢測(cè)是否存在數(shù)據(jù)庫(kù)別名Cntssamp,如果沒有則建立之;自動(dòng)檢測(cè)別名Cntssamp中是否存在表格TSK(圖書庫(kù)),如果沒有則自動(dòng)建立表格TSK。

  procedure TForm1.FormCreate(Sender: TObjecvar ap:TStringList;

  answer:Integer;

  begin  ap:=TStringlist.Create;

  Session.GetAliasNames(ap); {取得別名列表}

  if (ap.IndexOf(Cntssamp)=-1) then {判斷別名是否存在}

  begin

  answer:=Application.MessageBox(BDE信息窗口,mb—OKCancel);{增加一個(gè)名為Cngzsamp的數(shù)據(jù)庫(kù)別名}

  if answer=IDCANCEL then

  begin

  ap.Free;   Exit;  end;

  Session.AddStandardAlias(Cntssamp,c:delphp11,Paradox);

  Session.SaveConfigFile; {BDE配置文件存盤}

  end ;

  ap.Clear; {取得Cngzsamp中的所有表格名稱列表}

  Session.GetTableNames(Cntssamp,,False,False,ap);

  if (ap.IndexOf(TSK)=-1) then {判斷表格是否存在}

  begin

  answer:=Application.MessageBox(Cntssamp中不存在表格TSK,現(xiàn)在創(chuàng)建嗎?,表格信息窗口,mb—OKCancel);

  if answer=IDCANCEL then

  begin

  ap.Free;   Exit;   end;

  with table1 do

  begin

  Active:=false;

  DatabaseName:=Cntss& {數(shù)據(jù)庫(kù)別名}

  TableName:=TSK;   {表格名}

  TableType:=ttParadox; {數(shù)據(jù)庫(kù)類型}

  with FieldDefs do

  begin {增加字段}

  with IndexDefs do

  begin {增加索引}

  Clear; {按書號(hào)字段建立主索引}

  Add(SHSY,SH,[Primary,ixUnique]);   end;

  CreateTable; {創(chuàng)建表格}

  end;   end ;   ap.free; {釋放變量ap} end;

  5總結(jié)

  本文對(duì)delphi在其數(shù)據(jù)庫(kù)應(yīng)用中的地位進(jìn)行了詳細(xì)的分析。指出了delphi應(yīng)用于數(shù)據(jù)庫(kù)的各種方法,并且用例子詳細(xì)地說明。用delphi處理數(shù)據(jù)庫(kù),形象、方便,大大提高了編程的效率。

  參考文獻(xiàn):

  [1]薩師炕,王珊,數(shù)據(jù)庫(kù)系統(tǒng)概論(第三版),高等教育出版社,1983年8月

  [2]李新宇,鄭麗群,吳志強(qiáng).ORACLE分布式數(shù)據(jù)庫(kù)及應(yīng)用.計(jì)算機(jī)應(yīng)用[J].2004(22):71~61.

  [3]周愛民,Delphi源代碼分析,電子工業(yè)出版社2004年9月

【淺論基于Delphi的數(shù)據(jù)庫(kù)開發(fā)論文】相關(guān)文章:

Delphi下基于GIS的某邊防管控信息系統(tǒng)開發(fā)04-27

Delphi程序設(shè)計(jì)論文04-27

淺論鐵路物資企業(yè)的數(shù)據(jù)庫(kù)營(yíng)銷戰(zhàn)略論文04-30

基于Delphi的發(fā)動(dòng)機(jī)臺(tái)架試驗(yàn)單片機(jī)控制系統(tǒng)的開發(fā)05-02

基于BREW的無線數(shù)據(jù)業(yè)務(wù)開發(fā)論文05-04

基于Avenue語言的GIS空間數(shù)據(jù)庫(kù)管理與開發(fā)04-29

淺論基于RFID技術(shù)的供應(yīng)鏈管理論文05-06

淺論基于核心素養(yǎng)的課堂改革04-30

論Delphi開發(fā)商品化軟件的優(yōu)點(diǎn)05-01

淺論房地產(chǎn)開發(fā)企業(yè)納稅籌劃技巧論文04-29