亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 036.htm

?? delphi編程
?? HTM
?? 第 1 頁 / 共 2 頁
字號:
<HTML><HEAD><meta http-equiv="Content-Type" content="text/html; charset=GB2312"><TITLE>-->DELPHI基礎教程-->第十五章 數(shù)據(jù)訪問部件的應用及編程(一)</TITLE>
<META NAME="keywords" CONTENT=" DELPHI基礎教程 第十五章 數(shù)據(jù)訪問部件的應用及編程(一)">
<META NAME="description" CONTENT=" - DELPHI基礎教程 - 第十五章 數(shù)據(jù)訪問部件的應用及編程(一)">

<style>
<!--
#page {position:absolute; z-index:0; left:0px; top:0px}
.tt3 {font: 9pt/12pt "宋體"}
.tt2 {font: 12pt/15pt "宋體"}
a {text-decoration:none}
a:hover {color: blue;text-decoration:underline}
-->
</style>
</HEAD>
<body text="#000000" aLink=#9900ff link=#006699 vLink=#006699 bgcolor="#FFFFFF" leftmargin="3" topmargin="3" marginheight="3" marginwidth="3">
<TABLE WIDTH="100%" CELLPADDING=10 CELLSPACING=0 BORDER=0>
<TR>
<TD CLASS="tt3" VALIGN="top" width="8%"  bgcolor="#e0e0e0"><strong><A HREF="037.htm"><FONT style="FONT-SIZE: 9pt">后一頁</font></A><BR>
<A HREF="035.htm"><FONT style="FONT-SIZE: 9pt">前一頁</font></A><BR>

<A HREF="index.html"><FONT style="FONT-SIZE: 9pt">回目錄</font></A><BR>
<A HREF="../../../../index.htm"><FONT style="FONT-SIZE: 9pt">回首頁</font></A><BR>
</strong>
</TD>
<TD class="tt2" bgcolor="#F5F8F8" width="84%"><center><B><FONT style="FONT-SIZE: 16.5pt" COLOR="#FF6666" FACE="楷體_GB2312">第十五章 數(shù)據(jù)訪問部件的應用及編程(一)</FONT></B></center>
<hr color="#EE9B73" size="1" width="94%">
<p>&nbsp;&nbsp;&nbsp; 在這一章里我們主要介紹Delphi的數(shù)據(jù)訪問部件的層次結(jié)構(gòu)、
多部件之間的關系、部件的屬性、方法、事件以及各部件的應用。這些部件包括:</p>
<p>● TSession部件</p>
<p>● 數(shù)據(jù)集部件(TTable和TQuery)</p>
<p>● TDatasource部件</p>
<p>● 字段對象TField</p>
<p>● 字段編輯器的使用</p>
<p>● TReport部件和TBatchMove部件</p>
<p>我們對這些部件的屬性、方法和事件進行一般性的描述,讀者在實際使用Delphi開發(fā)應用程序時,還可以通過聯(lián)機幫助獲得有關部件更詳細的信息。 </p>
<p align="center">15.1 Delphi數(shù)據(jù)訪問部件的層次結(jié)構(gòu) </p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Delphi提供了強大的開發(fā)數(shù)據(jù)庫應用程序的能力,它給用戶提供了大量的數(shù)據(jù)訪問部件。以方便程序設計人員開發(fā)數(shù)據(jù)庫應用程序。這些部件中,有些部件繼承了另一些部件的屬性、方法和事件,也就是說多部件之間存在著繼承和被繼承的關系,各部件的這種關聯(lián)便構(gòu)成了一個層次結(jié)構(gòu) </p>
<p>圖15.1 Delphi數(shù)據(jù)訪問部件的層次結(jié)構(gòu) </p>
<p>TSession是全局性的部件,在應用程序運行時,它自動地建立,在設計階段和運行過程中它是一個不可見的部件。</p>
<p>TDatabase部件是為開發(fā)客戶/服務器數(shù)據(jù)庫應用程序時,設置登錄的數(shù)據(jù)庫的有關參數(shù)的,它在數(shù)據(jù)訪問部件頁上。</p>
<p>TDataset部件是不可見的,TTable和TQuery部件是由它派生而來的,這兩個部件一般被稱為數(shù)據(jù)集部件,它們在數(shù)據(jù)訪問部件頁上。</p>
<p>TDatasource部件是連接數(shù)據(jù)集部件和數(shù)據(jù)瀏覽部件的橋梁,它在數(shù)據(jù)訪問部件頁上。</p>
<p>TFields部件對應于數(shù)據(jù)庫表中的實際字段,它既可以在應用程序的運行過程中動態(tài)地生成也可以在程序設計階段用字段編輯器創(chuàng)建。它是不可見的部件,在程序中我們可以通過TField部件來訪問數(shù)據(jù)庫記錄的各個字段值。 </p>
<p align="center">15.2 Tsession部件及其應用 </p>
<p>TSession部件一般用得較少,但它對于一些特殊的應用是很有用的,在每一個數(shù)據(jù)庫應用程序運行時Delphi自動地創(chuàng)建一個TSession部件。程序設計人既不能看見該部件也不能顯示地創(chuàng)建一個TSession
部件,但是我們可以在應用程序中全局性地使用TSession部件的屬性、方法。 </p>
<p>15.2.1 TSession部件的重要屬性及作用 </p>
<p>TSession部件的許多重要屬性是用于控制數(shù)據(jù)庫應用程序與數(shù)據(jù)庫的連接的,在一個應用程序中,可以全局性地設置TSession的有關屬性值,對與之相連接的磁盤上的數(shù)據(jù)庫進行控制。TSession部件主要有下列屬性:</p>
<p>Database屬性:是TSession中可以進行連接的所有數(shù)據(jù)庫的數(shù)據(jù)庫名字列表,這些數(shù)據(jù)庫的名字常常是實際數(shù)據(jù)庫的別名,包括數(shù)據(jù)庫的路徑、用戶名、用戶登錄口令等參數(shù)。</p>
<p>DatabaseCount屬性:是TSession中可以進行連接的所有數(shù)據(jù)庫的數(shù)量,它是一個整數(shù)。</p>
<p>KeepCounnections屬性:是一個布爾型屬性,用它說明應用程序是否保持與一個非活動數(shù)據(jù)庫的連接。因為對于一個數(shù)據(jù)庫,當該數(shù)據(jù)庫中沒有相應的數(shù)據(jù)集部件(TTable或TQuery)被打開時,該數(shù)據(jù)庫將自動地變成非活動的數(shù)據(jù)庫。缺省情況下,KeePcounnections的值是True,就是說應用程序總是保持著與數(shù)據(jù)庫的連接,
即使數(shù)據(jù)庫變成了非活動的數(shù)據(jù)庫時,也是如此。如果將KeepConnections屬性設置成False,那么當數(shù)據(jù)庫由活動狀態(tài)變成非活動狀態(tài)時,應用程序與該數(shù)據(jù)庫的連接也隨之中斷。</p>
<p>NetFileDir屬性:說明BDE網(wǎng)絡控制文件的路徑名。</p>
<p>PrivateDir屬性:說明存取臨時文件的路徑名。 </p>
<p>15.2.2 TSession部件的方法: </p>
<p>TSession部件中的大部分方法是用于向用戶提供與應用程序相連接的數(shù)據(jù)庫的信息,如數(shù)據(jù)庫的名字及別名,數(shù)據(jù)庫中的表名以及數(shù)據(jù)庫引擎BDE的有關參數(shù)等,在設計數(shù)據(jù)庫應用程序時,想要獲取有關數(shù)據(jù)庫的信息,調(diào)用TSession部件的下列方法,
將會大大簡化程序的設計。</p>
<p>GetAliasNames方法:調(diào)用該方法,我們可以獲得數(shù)據(jù)庫引擎BDE中定義的數(shù)據(jù)庫別名。</p>
<p>GetAliasParams方法:該方法主要用于獲取我們在BDE中定義數(shù)據(jù)庫別名時所說明的參數(shù)值,如BDE所在的目錄路徑以及實際名稱等。</p>
<p>GetDatabaseNames
方法:調(diào)用該方法可以幫助我們獲得當前應用程序可以進行連接的所有數(shù)據(jù)庫的名字,數(shù)據(jù)庫的名字是用戶使用BDE工具定義的實際數(shù)據(jù)庫的別名。</p>
<p>GetDriverNames方法:數(shù)據(jù)庫引擎BDE可以與多種數(shù)據(jù)庫管理系統(tǒng)相連接,如客戶/服務器數(shù)據(jù)庫管理系統(tǒng)Oracle、Sybase以及本地數(shù)據(jù)庫管理系統(tǒng)dBASE,Paradox等,BDE與每一種數(shù)據(jù)庫管理系統(tǒng)進行連接時,都有相應的驅(qū)動程序,而且這些驅(qū)動程序都可以選擇地安裝。通過調(diào)用GetDriverNames方法。我們可以獲得當前BDE安裝的數(shù)據(jù)庫驅(qū)動程序的名字。</p>
<p>GetDriverParams方法:BDE的數(shù)據(jù)庫驅(qū)動程序中包含著多個參數(shù),如支持的民族語言、DBMS的版本號、文件塊大小等,對于服務器上的DBMS,還有數(shù)據(jù)庫服務器的名字等等。</p>
<p>GetTableNames方法:因為每一個數(shù)據(jù)庫都是由多個數(shù)據(jù)庫表組成的,我們通過說明數(shù)據(jù)庫名,然后調(diào)用GetTableNames方法,便可以獲得該數(shù)據(jù)庫中全部的數(shù)據(jù)庫表的名字。</p>
<p>上述這些方法在調(diào)用時都需要一個字符串列表作為參數(shù),
而且都返回一個字符串列表的值。</p>
<p>TSession部件還有一個叫DropConnections的方法用于控制應用程序與數(shù)據(jù)庫的連接,當調(diào)用DropConnections方法時,應用程序與所有的數(shù)據(jù)庫的連接將會切斷。 </p>
<p>15.2.3 TSession部件應用舉例 </p>
<p>例15.1:我們創(chuàng)建一個應用程序,通過調(diào)用TSession有關的方法獲取當前應用程序可以進行連接的數(shù)據(jù)庫的名字以及獲取其中任意一個數(shù)據(jù)庫中的全部數(shù)據(jù)庫表的名字。 </p>
<p> 通過TSession部件獲取數(shù)據(jù)庫的有關信息 </p>
<p>窗體中主要使用了兩個列表框,其中列表框DatabaselistBox用于顯示數(shù)據(jù)庫的名字,列表框TablelistBox用于顯示數(shù)據(jù)庫中的表名。程序運行完后數(shù)據(jù)庫的名字顯示在DatabaselistBox列表框中,當用戶單擊DatabaselistBox列表框中的數(shù)據(jù)庫名時,該數(shù)據(jù)庫全部的數(shù)據(jù)庫表的名字將會顯示在TablelistBox列表框中。有關的程序代碼如下: </p>
<p>程序清單15.1</p>
<p>unit unit31; </p>
<p>interface </p>
<p>uses</p>
<p>SysUtils, Windows, Messages, Classes, Graphics, Controls,</p>
<p>Forms, Dialogs, StdCtrls, DB, DBTables, Buttons, ComCtrls, Tabnotbk; </p>
<p>type </p>
<p>TQueryForm = class(TForm)</p>
<p>BitBtn1: TBitBtn;</p>
<p>DataSource1: TDataSource;</p>
<p>Table1: TTable;</p>
<p>GroupBox1: TGroupBox;</p>
<p>CheckBox1: TCheckBox;</p>
<p>CheckBox2: TCheckBox;</p>
<p>PageControl1: TPageControl;</p>
<p>TabSheet1: TTabSheet;</p>
<p>Label1: TLabel;</p>
<p>Label2: TLabel;</p>
<p>Label3: TLabel;</p>
<p>ListBox1: TListBox;</p>
<p>ListBox2: TListBox;</p>
<p>ListBox3: TListBox;</p>
<p>TabSheet2: TTabSheet;</p>
<p>Memo1: TMemo;</p>
<p>procedure FormCreate(Sender: TObject);</p>
<p>procedure ListBox1Click(Sender: TObject);</p>
<p>procedure ListBox2Click(Sender: TObject);</p>
<p>end;</p>
<p> </p>
<p>var</p>
<p>QueryForm: TQueryForm;</p>
<p> </p>
<p>implementation</p>
<p> </p>
<p>{$R *.DFM}</p>
<p> </p>
<p>uses RSLTFORM;</p>
<p> </p>
<p>procedure TQueryForm.FormCreate(Sender: TObject);</p>
<p>begin</p>
<p>Screen.Cursor := crHourglass;</p>
<p> </p>
<p>{ Populate the alias list }</p>
<p> </p>
<p>with ListBox1 do</p>
<p>begin</p>
<p>Items.Clear;</p>
<p>Session.GetAliasNames(Items);</p>
<p>end;</p>
<p> </p>
<p>{ Make sure there are aliases defined }</p>
<p> </p>
<p>Screen.Cursor := crDefault;</p>
<p>if ListBox1.Items.Count &lt; 1 then</p>
<p>MessageDlg( 'There are no database aliases currently defined. You ' +</p>
<p>'need at least one alias to use this demonstration.',</p>
<p>mtError, [mbOK], 0 );</p>
<p>end;</p>
<p> </p>
<p>procedure TQueryForm.ListBox1Click(Sender: TObject);</p>

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
www.日韩精品| 伊人夜夜躁av伊人久久| 激情成人综合网| www日韩大片| 国产成人高清在线| 国产精品理伦片| 色成人在线视频| 亚瑟在线精品视频| 91.com视频| 国产激情视频一区二区三区欧美| 国产视频一区二区三区在线观看| 不卡一二三区首页| 日韩激情中文字幕| 激情欧美日韩一区二区| 久久精品国产网站| 免费成人av在线| 成人免费观看视频| 91成人看片片| 日韩精品在线一区二区| 亚洲国产视频直播| 成人少妇影院yyyy| 午夜久久久久久| 久久亚洲一级片| 99精品在线观看视频| 日韩av不卡在线观看| 久久精品人人做人人爽97| 在线观看欧美黄色| 狠狠色综合播放一区二区| 中国色在线观看另类| 欧美人妇做爰xxxⅹ性高电影| 六月婷婷色综合| 一区二区三区欧美在线观看| 欧美精品一区男女天堂| 91精品福利视频| 国产精品一区二区在线看| 亚洲一区中文日韩| 久久久久久麻豆| 91精品国产一区二区| voyeur盗摄精品| 九色|91porny| 亚洲午夜av在线| 日韩毛片高清在线播放| 精品国产乱码久久久久久夜甘婷婷| 91在线免费视频观看| 韩日欧美一区二区三区| 亚洲成人福利片| 亚洲精品国产a久久久久久 | 99久久免费国产| 久久国产精品99久久久久久老狼| 亚洲欧美偷拍卡通变态| 国产婷婷色一区二区三区四区| 欧美日韩一区中文字幕| 不卡在线观看av| 国产一区二区三区在线观看精品 | 亚洲欧洲精品天堂一级| 久久这里只有精品6| 欧美精品vⅰdeose4hd| 99精品欧美一区| 成人综合在线网站| 国产在线视频一区二区| 日本亚洲免费观看| 亚洲福利一二三区| 一区二区三区在线观看欧美| 国产精品区一区二区三| 国产日韩欧美电影| 久久影院午夜片一区| 欧美一区午夜视频在线观看| 色噜噜久久综合| 91女厕偷拍女厕偷拍高清| 99久久婷婷国产综合精品| 成人av中文字幕| 99久久夜色精品国产网站| 99国产欧美久久久精品| 91无套直看片红桃| 91女厕偷拍女厕偷拍高清| 9i看片成人免费高清| 一本色道久久综合亚洲aⅴ蜜桃| 丰满放荡岳乱妇91ww| 成人免费视频网站在线观看| 成人爱爱电影网址| 一道本成人在线| 久久精品夜色噜噜亚洲a∨| 色久优优欧美色久优优| av午夜精品一区二区三区| 亚洲va中文字幕| 欧美成人video| 国产高清精品久久久久| 亚洲免费在线观看| 国产精品系列在线| 欧美日韩成人一区二区| av一区二区久久| 成人福利视频在线| 日韩免费性生活视频播放| 99国产精品久| 色婷婷综合视频在线观看| 色综合 综合色| 欧美另类高清zo欧美| 4438x亚洲最大成人网| 精品久久一二三区| 久久久99精品久久| 亚洲三级电影全部在线观看高清| 国产精品久久久久久久久果冻传媒| 中文天堂在线一区| 亚洲美女视频在线观看| 日韩中文字幕麻豆| 国产成人精品亚洲777人妖| 99re成人在线| 欧美精品在线一区二区三区| 久久老女人爱爱| 亚洲午夜电影在线| 国产一区二区伦理| 91久久精品网| 久久这里只有精品6| 一区二区三区毛片| 国产一区二区三区四区在线观看 | 亚洲精品国产a久久久久久 | 亚洲精品一线二线三线无人区| 国产精品网站在线播放| 亚洲精品成人天堂一二三| 日本大胆欧美人术艺术动态| 国产99精品在线观看| 欧美另类久久久品| 国产精品日产欧美久久久久| 舔着乳尖日韩一区| 99精品视频一区二区三区| 日韩欧美一区二区不卡| 中文字幕亚洲一区二区av在线| 亚洲激情一二三区| 国产一区二区福利| 欧美日韩国产另类一区| 中文字幕乱码久久午夜不卡| 麻豆91免费看| 在线中文字幕一区二区| 久久久www成人免费毛片麻豆| 亚洲电影中文字幕在线观看| 国产成人丝袜美腿| 欧美成人伊人久久综合网| 亚洲国产成人tv| caoporn国产精品| 午夜精品一区在线观看| 成人黄页在线观看| 天天综合日日夜夜精品| 欧美在线999| 成人欧美一区二区三区白人 | 欧美亚洲自拍偷拍| 精品裸体舞一区二区三区| 亚洲一区二区在线播放相泽 | 一区二区三区av电影| 男女性色大片免费观看一区二区| 色偷偷88欧美精品久久久| 亚洲国产成人午夜在线一区| 久久电影网电视剧免费观看| 9191精品国产综合久久久久久| 亚洲精品五月天| 91在线国产观看| 国产精品美女一区二区| 国产成人精品亚洲午夜麻豆| 久久亚洲免费视频| 久久精品99久久久| 欧美电视剧免费全集观看| 免费在线观看成人| 91精品黄色片免费大全| 日韩av二区在线播放| 欧美群妇大交群的观看方式| 中文字幕一区二区三区精华液 | 国产亚洲欧洲997久久综合 | 91蜜桃网址入口| 中文字幕在线观看一区| 91丨九色丨黑人外教| 亚洲女同ⅹxx女同tv| 色先锋aa成人| 一区二区三区精品在线观看| 欧美亚洲一区二区在线| 亚洲午夜三级在线| 欧美日韩在线播放一区| 亚洲成在人线在线播放| 欧美精品一卡二卡| 午夜精品久久久久久久久| 在线播放亚洲一区| 日韩成人精品在线观看| 日韩欧美一级片| 捆绑变态av一区二区三区| 日韩一区二区免费视频| 国产一区二区三区黄视频| 欧美激情一区二区三区蜜桃视频| 成人精品一区二区三区中文字幕| 亚洲老妇xxxxxx| 91麻豆精品国产91久久久| 激情亚洲综合在线| 国产亚洲一本大道中文在线| 91网页版在线| 视频一区二区三区在线| 久久综合色8888| 亚洲视频在线观看一区| 久久精品人人爽人人爽| 亚洲日韩欧美一区二区在线| 亚洲欧美综合另类在线卡通| 欧美精品一区在线观看| 精品国产一区二区三区忘忧草| 欧美色成人综合|