?? 031.htm
字號(hào):
<p>部件名稱 主 要 用 途 </p>
<p>────────────────────────────</p>
<p> 作為數(shù)據(jù)集部件TTable、TQuery、StoredProc組</p>
<p>TDataSource 件與數(shù)據(jù)瀏覽件TDBGrid、TDBEdit之間傳送數(shù)據(jù)</p>
<p> 的通道。 </p>
<p>────────────────────────────</p>
<p> 它是存取磁盤(pán)上數(shù)據(jù)庫(kù)表的媒介,它通過(guò)BDE存 </p>
<p>TTable 取數(shù)據(jù)庫(kù)表中的數(shù)據(jù),TTable再與TDataSource </p>
<p> 進(jìn)行“對(duì)話”,使得數(shù)據(jù)瀏覽部件能夠有效地從</p>
<p> TTable中訪問(wèn)數(shù)據(jù)并能顯示和編輯其中的數(shù)據(jù)。</p>
<p>────────────────────────────</p>
<p> 它利用SQL語(yǔ)言訪問(wèn)磁盤(pán)上數(shù)據(jù)庫(kù)表中的數(shù)據(jù), </p>
<p>TQuery 并與TDataSource“對(duì)話”,實(shí)現(xiàn)數(shù)據(jù)瀏覽部件 </p>
<p> 對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)。 </p>
<p>────────────────────────────</p>
<p>TStoredProc 在應(yīng)用程序中,它主要用來(lái)訪問(wèn)遠(yuǎn)程服務(wù)器中的</p>
<p> 存貯過(guò)程 </p>
<p>────────────────────────────</p>
<p> 當(dāng)應(yīng)用程序要登錄到一個(gè)遠(yuǎn)程服務(wù)器上的數(shù)據(jù)庫(kù)</p>
<p>TDatabase 時(shí),可以用該部件來(lái)建立應(yīng)用程序與數(shù)據(jù)庫(kù)永久</p>
<p> 性的連接。 </p>
<p>────────────────────────────</p>
<p>TBatchMove 用于復(fù)制數(shù)據(jù)庫(kù)表的結(jié)構(gòu)或表中的記錄。 </p>
<p>────────────────────────────</p>
<p>TReport 用于創(chuàng)建數(shù)據(jù)庫(kù)的輸出報(bào)表。 </p>
<p>━━━━━━━━━━━━━━━━━━━━━━━━━━━━ </p>
</font><p><font face="宋體" lang="ZH-CN">
值得指出的是在絕大多數(shù)數(shù)據(jù)庫(kù)應(yīng)用中,一般都是使用數(shù)據(jù)集部件TTable、TQuery或TStoredProc與磁盤(pán)上的數(shù)據(jù)庫(kù)進(jìn)行連接,用TDataSource部件連接數(shù)據(jù)控制部件和數(shù)據(jù)集部件,當(dāng)然用戶也可以自定義數(shù)據(jù)集部件,用于數(shù)據(jù)庫(kù)應(yīng)用當(dāng)中,
TTable 、 TQuery 和TStoredProc部件中都包含一個(gè)不可見(jiàn)的TField類型的對(duì)象Fields,F(xiàn)ields是一個(gè)串列表,它對(duì)應(yīng)于數(shù)據(jù)庫(kù)表或一個(gè)查詢結(jié)果的列或字段。Fields對(duì)象是伴隨著TTable、
TQuery 和TStoredproc部件的活動(dòng)狀態(tài)動(dòng)態(tài)地建立的,當(dāng)數(shù)據(jù)庫(kù)表被關(guān)閉時(shí),F(xiàn)ields
對(duì)象也隨之消失,它在程序設(shè)計(jì)和程序運(yùn)行過(guò)程中都是不可見(jiàn)的。</p>
<p>當(dāng)然也可以利用Fields Editor建立永久性的Fields對(duì)象供Delphi應(yīng)用程序使用,
我們將在后面的內(nèi)容中詳細(xì)闡述。</p>
<p>13.3.1.1 TTable部件 </p>
</font><p><font face="宋體" lang="ZH-CN">
利用TTable部件程序設(shè)計(jì)人員甚至可以不需要編寫(xiě)任何程序便可對(duì)數(shù)據(jù)庫(kù)進(jìn)行訪問(wèn),在一個(gè)應(yīng)用程序窗體中放置一個(gè)TTable部件的過(guò)程如下:</p>
<p>1、在部件選擇板上選擇Data Access頁(yè);</p>
<p>2、單擊Table圖標(biāo);</p>
<p>3、在窗體內(nèi)單擊鼠標(biāo),獲得一個(gè)TTable部件;</p>
<p>4、為T(mén)Table部件設(shè)置有關(guān)的屬性:</p>
<p>DatabaseName屬性指定要訪問(wèn)的數(shù)據(jù)庫(kù)所在的路徑名,路徑名可以用別名來(lái)表示。</p>
<p>TableName屬性指定要訪問(wèn)數(shù)據(jù)庫(kù)中具體的數(shù)據(jù)庫(kù)表。</p>
<p>Active屬性設(shè)置為T(mén)rue時(shí),表示打開(kāi)要訪問(wèn)的數(shù)據(jù)庫(kù)表;設(shè)置為False時(shí),暫時(shí)
不打開(kāi)要訪問(wèn)的數(shù)據(jù)庫(kù)表。</p>
</font><p><font face="宋體" lang="ZH-CN">
缺省情況下,TTtable部件中包含了要訪問(wèn)的數(shù)據(jù)庫(kù)表中所有的字段和記錄,
用鼠標(biāo)雙擊TTable圖標(biāo)時(shí),會(huì)出現(xiàn)一個(gè)字段編輯器(Fields Editor),使用Fields
Editor可以對(duì)TTable部件中包含的數(shù)據(jù)庫(kù)表中的字段的顯示格式等屬性進(jìn)行編輯,具體可以控制:</p>
<p>●
建立一個(gè)永久性的字段列表,包括字段的順序,字段的類型等,即使磁盤(pán)上實(shí)際的數(shù)據(jù)庫(kù)表的表結(jié)構(gòu)發(fā)生了改變,我們建立的這個(gè)永久性的字段列表也不會(huì)發(fā)生改變</p>
<p>● 為每個(gè)字段指定一個(gè)便于閱讀和使用的名字</p>
<p>● 指定字段顯示的順序</p>
<p>● 為每個(gè)字段指定一個(gè)用于顯示的字符串</p>
<p>● 為字段增加合法性檢驗(yàn)</p>
<p>●
為了顯示的需要還可以建立新的字段(如可計(jì)算的字段)具體的使用方法見(jiàn)后面的內(nèi)容</p>
<p>13.3.1.2 TQuery部件 </p>
</font><p><font face="宋體" lang="ZH-CN">
TQuery部件是我們使用SQL語(yǔ)言開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用程序的有力工具,因?yàn)槭褂肧QL語(yǔ)言,我們可以非常方便靈活地對(duì)一個(gè)或多個(gè)數(shù)據(jù)庫(kù)表中的記錄進(jìn)行訪問(wèn),所以利用TQuery我們可以查詢本地的數(shù)據(jù)庫(kù)如P</font><font
face="Tms Rmn,Times New Roman">à?</font><font face="宋體" lang="ZH-CN">aradox和dBASE數(shù)據(jù)庫(kù)系統(tǒng)中的數(shù)據(jù),我們還可以使用TQuery部件對(duì)一個(gè)遠(yuǎn)地的數(shù)據(jù)庫(kù)SQL服務(wù)器進(jìn)行訪問(wèn),建立Client/Server模式的應(yīng)用程序。</p>
<p>在一個(gè)應(yīng)用程序窗體中放置一個(gè)TQuery部件的過(guò)程如下:</p>
<p>1、在部件選擇板上選擇Data Access頁(yè);</p>
<p>2、單擊Query圖標(biāo);</p>
<p>3、在窗體內(nèi)單擊鼠標(biāo),獲得一個(gè)TQuery部件;</p>
<p>4、為T(mén)Query部件設(shè)置有關(guān)的屬性:</p>
<p>DatabaseName屬性指定將要訪問(wèn)的數(shù)據(jù)庫(kù)的路徑名。</p>
</font><p><font face="宋體" lang="ZH-CN"> SQL屬性指定對(duì)數(shù)據(jù)庫(kù)表進(jìn)行訪問(wèn)SQL語(yǔ)句,它可以是一條查詢語(yǔ)句也可以是一條
修改語(yǔ)句或插入語(yǔ)句等。在對(duì)象瀏覽器上,單擊SQL屬性時(shí),會(huì)打開(kāi)一個(gè)字符串編輯器供程序設(shè)計(jì)者輸入SQL語(yǔ)句。</p>
</font><p><font face="宋體" lang="ZH-CN">
在這里要注意在TQuery部件中,不是用TableName
屬性來(lái)指定要訪問(wèn)的數(shù)據(jù)庫(kù)中的數(shù)據(jù)庫(kù)表,而是在SQL屬性中,通過(guò)SQL語(yǔ)句來(lái)指定將要訪問(wèn)的數(shù)據(jù)庫(kù)表。</p>
<p>13.3.1.3 TDataSouece部件 </p>
</font><p><font face="宋體" lang="ZH-CN">
TDataSource部件是連接數(shù)據(jù)集部件TTable、TQuery、 TStoredProc
和數(shù)據(jù)控制部件TDBGrid、TDBEdit等的橋梁,TTable、TQuery、TStoredProc部件通過(guò)BDE可以實(shí)現(xiàn)與磁盤(pán)上的數(shù)據(jù)庫(kù)連接即訪問(wèn),
但它們本身不能顯示數(shù)據(jù)庫(kù)中的數(shù)據(jù)信息, 而數(shù)據(jù)控制部件如TDBGrid、TDBEdit等能夠提供可視化的界面,顯示數(shù)據(jù)庫(kù)中的數(shù)據(jù)信息,但它們不具備訪問(wèn)磁盤(pán)數(shù)據(jù)庫(kù)的能力,正是TDataSource將這兩者有機(jī)地結(jié)合起來(lái),
使得用戶才能交互地對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)信息進(jìn)行查詢、修改、插入、刪除等操作。</p>
<p>在應(yīng)用程序窗體中放置TDataSource部件的過(guò)程如下:</p>
<p>1、在部件選擇板上選擇Data Access頁(yè);</p>
<p>2、單擊DataSource圖標(biāo);</p>
<p>3、在窗體內(nèi)單擊鼠標(biāo),獲得一個(gè)TDataSource部件;</p>
<p>4、為T(mén)DataSource部件設(shè)置有關(guān)的屬性:</p>
<p>Dataset屬性指定一個(gè)數(shù)據(jù)集部件,可以是TTable、TQuery或TStoredProc部件的
名字。 </font></p>
<hr color="#EE9B73" size="1" width="94%">
</TD>
<TD CLASS="tt3" VALIGN="bottom" width="8%" bgcolor="#e0e0e0"><strong><A HREF="032.htm"><FONT style="FONT-SIZE: 9pt">后一頁(yè)</font></A><BR>
<A HREF="030.htm"><FONT style="FONT-SIZE: 9pt">前一頁(yè)</font></A><BR>
<A HREF="index.html"><FONT style="FONT-SIZE: 9pt">回目錄</font></A><BR>
<A HREF="../../../../index.htm"><FONT style="FONT-SIZE: 9pt">回首頁(yè)</font></A><BR>
</strong>
</TD>
</TR>
</table>
</BODY></HTML>
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -