国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
VB數(shù)據(jù)庫(例子)
用Visual Basic 5.0作為數(shù)據(jù)庫開發(fā)平臺
        3.0版以后的Visual Basic具有數(shù)據(jù)庫連接和數(shù)據(jù)處理功能,因此完全有資格作為數(shù)據(jù)庫應(yīng)用程序的開發(fā)環(huán)境。Microsoft公司把許多新的數(shù)據(jù)訪問功能加到Visual Basic中,使得該產(chǎn)品成為桌面數(shù)據(jù)庫市場中Access、FoxPto及Paradox for Windows的直接競爭者。與普通的數(shù)據(jù)庫系統(tǒng)相比,用Visual Basic作為數(shù)據(jù)庫開發(fā)平臺有以下優(yōu)點:
(1)簡單性。Visual Basic提供了數(shù)據(jù)控件,利用該控件,用戶只要編寫少量的代碼甚至不編寫任何代碼就可以訪問數(shù)據(jù)庫,對數(shù)據(jù)庫進(jìn)行瀏覽。
(2)靈活性。Visual Basic不像一般的數(shù)據(jù)庫(如Access)那樣局限于特定的應(yīng)用程序結(jié)構(gòu),也不需要用某些指令對當(dāng)前打開的數(shù)據(jù)庫進(jìn)行操作,因而比較靈活。
(3)可擴(kuò)充性。Visual Basic是一種可以擴(kuò)充的語言,其中包括在數(shù)據(jù)庫應(yīng)用方面的擴(kuò)充。在Visual Basic中,可以使用ActiveX控件(以前版本中稱為VBX或OLE控件),這些控件可以由Microsoft公司提供,也可以由第三方開發(fā)者提供。有了這些控件,可以很容易地在Visual Basic中增加新功能,擴(kuò)充Visual Basic數(shù)據(jù)存取控制的指令系統(tǒng)。在其它數(shù)據(jù)庫開發(fā)平臺中,目前還不具備ACtiveX控件。

用Visual Basic 5.0作為數(shù)據(jù)庫前端
        數(shù)據(jù)庫前端是一個計算機(jī)應(yīng)用程序,用該程序可以選擇數(shù)據(jù)庫中的數(shù)據(jù)項,并把所選
擇的數(shù)據(jù)項按用戶的要求顯示出來。數(shù)據(jù)庫系統(tǒng)本身被稱為后端,后端數(shù)據(jù)庫通常是一個關(guān)
系表的集合。
之所以選擇Visual Basic作為開發(fā)數(shù)據(jù)庫前端應(yīng)用程序的工具,主要是因為Visual Basic
可以和多種數(shù)據(jù)庫連接。也就是說,目前較為流行的大多數(shù)數(shù)據(jù)庫都可以與Visual Basic連
接,因而可以用Visual Basic開發(fā)相應(yīng)的前端應(yīng)用程序。
Visual Basic通過不同的方式與各種數(shù)據(jù)庫進(jìn)行連接,主要有三種方式,即Access數(shù)據(jù)
庫引擎、MicrosoftODBC驅(qū)動程序、第三方ODBC驅(qū)動程序。
1.Access數(shù)據(jù)庫引擎
ACcess是Visual BasiC的“內(nèi)部數(shù)據(jù)庫”,即在Visual Basic中可以直接建立Access數(shù)
據(jù)庫。同時,通過Access數(shù)據(jù)庫引擎,還可以使用下列數(shù)據(jù)庫:
·Btrieve(.DAT)
·dBASE(.DBF/.NDX)
·Foxpro(.DbF/.CDX/.NDX)
·Paradox(.DB, .PX)
2.Microsoft ODBC
通過’Microsoft ODBC驅(qū)動程序,可以使用下列數(shù)據(jù)庫:
·Microsoft SQL Server
·Oracle
·Sybase SQL Server
Excel(.XLS)
Text(.TXT)
Access(.MDB)
Btrieve
DBASE
FoxPro
Paradox
上面所列的數(shù)據(jù)庫中,除前三種外,其余數(shù)據(jù)庫均包含在一套Microsoft ODBC桌面數(shù)據(jù)庫驅(qū)動程序及Microsoft
Query 中。

第三方 ODBC
通過第三方ODBC驅(qū)動程序,Visual Basic可以和下列數(shù)據(jù)庫連接:
Digital Rdb
Gupta SQL Base
HP AllBase/SQL
HP IMage/SQL
IBM DB2,DB2/2
IBM OS/2 DBM
IBM SQL/DS
Informix
Ingres
NCR Teradata
Netware SQL
Progress
Tandem Nonstop SQL
Watcom SQL
XDB
在上面所列的數(shù)據(jù)庫中,初Digital公司的Rdb提供的ODBC驅(qū)動程序及Watcom SQL驅(qū)動程序之外,其余驅(qū)動程序
都是Q+E software的產(chǎn)品。
包含在Visual basic專業(yè)版和企業(yè)版中的Microsoft ODBC Adminstator可以與Microsoft SQL Server,
sybase Server 以及Oracle客戶服務(wù)器關(guān)系數(shù)據(jù)庫管理系統(tǒng)連接;通過Microsoft ODBC桌面數(shù)據(jù)庫驅(qū)動程序,
甚至可以象使用數(shù)據(jù)庫表一樣使用文本文件和Excel工作表。
 
從前面的介紹可以看出,可以為各種類型的數(shù)據(jù)庫管理系統(tǒng)編寫Visual Basic前端。事實上,使用ODBC驅(qū)
動程序,可以建立與幾乎任何數(shù)據(jù)庫管理系統(tǒng)連接的應(yīng)用程序。這一節(jié)中,將介紹可以與Visual Basic數(shù)據(jù)庫應(yīng)用程序一起使用的幾種數(shù)據(jù)庫管理系統(tǒng)。

普通的關(guān)系數(shù)據(jù)庫管理系統(tǒng)
        普通的關(guān)系數(shù)據(jù)庫管理系統(tǒng)(RDBMS)一般是指傳統(tǒng)的桌面RDBMS,以dBASE,Paradox為代表,這類數(shù)據(jù)庫系統(tǒng)對每個表和索引使用單獨的文件,并使用定長的記錄。建立數(shù)據(jù)庫時,可以指定每個字符(Character)數(shù)據(jù)類型字段的最大尺寸,當(dāng)字段的值最大尺寸小時,多余的字符位置用空白填充。與dBASE,Paradox不同,Btrieve表提供變長錄字段,當(dāng)字段內(nèi)的數(shù)據(jù)長度變化較大時,變長字符字段可以節(jié)省大量的磁盤空間。如果磁盤上的某個目錄中含有多個信息文件(.INF),則應(yīng)為每個信息文件中的每個表指定所使用的索引。信息文件的擴(kuò)展名為,INF,其文件名與表(庫)文件名相同。對于dBASEFoxko需要使用 .INF文件,而對Paradox或Btrieve來說則不需要。在建立一個dBASEFoxno表時,visual Basic自動建立.INF文件。為了與 .DBF 文件一起使用已有的.MDX或 .NDX索引文件,可以用文本編輯器(如“記事本”)建立 .INF文件。

客戶/服務(wù)器數(shù)據(jù)庫管理系統(tǒng)
       講入90年代以后,由于大型機(jī)和小型機(jī)數(shù)據(jù)庫管理系統(tǒng)的用戶希望“削減”其信息系統(tǒng)的開支,用相對廉價的文件服務(wù)器(多數(shù)基于PC體系結(jié)構(gòu))來代替維護(hù)費用十分高昂的大型機(jī),小型機(jī)硬件及數(shù)據(jù)庫軟件產(chǎn)品,從而導(dǎo)致客戶/服務(wù)器數(shù)據(jù)庫市場迅速擴(kuò)大。前端是伴隨客戶/服務(wù)器數(shù)據(jù)庫管理系統(tǒng)出現(xiàn)的,前端指的是在工作站上運行的客戶程序,而工作站則與局域網(wǎng)絡(luò)(LAN)或廣域網(wǎng)絡(luò)(WAN)上的服務(wù)器(后端)相連。分布式客戶/服務(wù)器系統(tǒng)是今后的主要發(fā)展趨勢。在分布式數(shù)據(jù)庫系統(tǒng)中,含有滿足查詢條件的數(shù)據(jù)的表,這些表可以放在不同的服務(wù)器中,而服務(wù)器可以放在廣域網(wǎng)的不同地方。在客戶/服務(wù)器的RDBMS中,服務(wù)器部分的操作系統(tǒng)與客戶機(jī)上的操作系統(tǒng)可以相問,也可以不同。在實際的客戶/服務(wù)器系統(tǒng)中,不相同的情況可能占多數(shù)。客戶/服務(wù)器系統(tǒng)與桌面數(shù)據(jù)庫管理系統(tǒng)有很大的不同,其中最主要的區(qū)別是所有由前端應(yīng)用程序發(fā)出的SQL語句都在服務(wù)器上執(zhí)行,即服務(wù)器負(fù)責(zé)執(zhí)行所有由工作站送入服務(wù)器的SQL語句。如果從工作站上向服務(wù)器發(fā)出一個肋 Select 查詢,則只有滿足查詢條件的記錄被返回到客戶工作站。此外,服務(wù)器還處理與并行性、一致性有關(guān)的問題。如果服務(wù)器不能完成工作站發(fā)出的查詢操作,則向工作站返回一個出錯信息。
大多數(shù)客戶/服務(wù)器RDBMS把所有的數(shù)據(jù)庫存儲在一個文件中。必要時,文件可在服務(wù)器計算機(jī)之間進(jìn)行劃分,但服務(wù)器的操作系統(tǒng)仍把分開的文件作為一個文件處理。客戶/服務(wù)器RDBMS還具有其它復(fù)雜的功能,例如支持事務(wù)記錄。當(dāng)出現(xiàn)重大的硬件或軟件故障而導(dǎo)致系統(tǒng)崩潰時,事務(wù)記錄可以使數(shù)據(jù)庫重建。此外,目前大多數(shù)客戶/服務(wù)器系統(tǒng)使用硬盤陣列和鏡象硬盤,這樣可以減少由于某個硬盤驅(qū)動器出現(xiàn)故障而造成停機(jī)的可能性。為了把Visual Basic數(shù)據(jù)庫應(yīng)用程序與客戶/服務(wù)器相連接,最簡單的辦法是使用合適的ODBC驅(qū)動程序。

Microsoft數(shù)據(jù)庫管理系統(tǒng)Access
        Microsoft Access也是一種桌面數(shù)據(jù)庫管理系統(tǒng),但它與傳統(tǒng)的桌面數(shù)據(jù)庫管理系統(tǒng)完全不一樣。Access 是 Visual Basic的內(nèi)部數(shù)據(jù)庫,即缺省數(shù)據(jù)庫類型。這里的“內(nèi)部”有兩方面的含義:一是用Access建立的數(shù)據(jù)庫(.MDB)可以在Visual Basic中使用;二是用Visual basic可以直接建立Access數(shù)據(jù)庫。因此,在Visual Basic中,“Access數(shù)據(jù)庫”和“Visual Basic 數(shù)據(jù)庫”含義相同。Access數(shù)據(jù)庫文件的結(jié)構(gòu)是以Microsoft SQL Server數(shù)據(jù)庫文件結(jié)構(gòu)為基礎(chǔ)的特點主要包括:
(1) 一個數(shù)據(jù)庫的所有表和索引都存儲在一個.MDB文件中,Text(文本)、Memo(備注)和OLEObject(OLE對象)等數(shù)據(jù)類型字段的長度都是可變的,Access調(diào)整數(shù)據(jù)字段的大小以容納相應(yīng)的數(shù)據(jù)類型。
(2) 數(shù)據(jù)字段可以含有時間信息,Date類型的字段對應(yīng)于SQL—92的Timestamp數(shù)據(jù)類型,但不以Timestamp 的格式存儲。
(3) Access支持空值,即Null(與空字符串不同)。Null是Visual Basic的保留字,用它來指明表的數(shù)據(jù)單元中沒有數(shù)據(jù)進(jìn)入。所有的客戶/服務(wù)器數(shù)據(jù)庫都支持Null值,但除了Access外,其它桌面數(shù)據(jù)庫幾乎都不支持Null值。
(4)在Access中,Memo字段作為Text類型來處理,其長度可達(dá)1.2GB。
(5)可以在Access中存儲QueryDef(查詢定義)對象,它與被編譯為SQL Server存儲過程的SQL SELECT語句類似。
(6)Access提供了長二進(jìn)制(LargeBinary)對象(BLOB),其大小僅受數(shù)據(jù)庫大小的限制,不受 .MDB文件結(jié)構(gòu)的限制;而數(shù)據(jù)庫的大小僅受硬盤容量的限制??梢栽贏ccess表的BLOB字段中存儲任何類型的數(shù)據(jù)(包括多媒體數(shù)據(jù)),并可用Get Chunk和Append方法對BLOB字段的數(shù)據(jù)進(jìn)行讀寫操作。
(7)Access數(shù)據(jù)庫具有較強(qiáng)的安全性。
以上介紹了可以在Visual Basic中使用的幾種數(shù)據(jù)庫管理系統(tǒng)。實際上,如果有合適的軟件和硬件,包括網(wǎng)關(guān)(Gateway)和中間件(Middleware),則可以連接流行的大型機(jī)和小型機(jī)RDBMS,如IBM的DB2、Digital Eqipment的Rdb等。除網(wǎng)關(guān)外,還應(yīng)為需要連接的大型機(jī)或小型機(jī)數(shù)據(jù)庫選擇合適的ODBC驅(qū)動程序。

       下面我們著重介紹一下數(shù)據(jù)庫的結(jié)構(gòu)。數(shù)據(jù)庫是相關(guān)數(shù)據(jù)的集合,一個數(shù)據(jù)庫含有各種成分,包括表、記錄、字段、索引等。
1.?dāng)?shù)據(jù)庫(Database)
Visual Basic中使用的數(shù)據(jù)庫是關(guān)系型數(shù)據(jù)庫(Relational Batabase)。一個數(shù)據(jù)庫由一個或一組數(shù)據(jù)表組成。每個數(shù)據(jù)庫都以文件的形式存放在磁盤上,即對應(yīng)于一個物理文件。不同的數(shù)據(jù)庫,與物理文件對應(yīng)的方式也不一樣。對于dBASE,FoxPro和Paradox格式的數(shù)據(jù)庫來說,一個數(shù)據(jù)表就是一個單獨的數(shù)據(jù)庫文件,而對于Microsoft Access、Btrieve格式的數(shù)據(jù)庫來說,一個數(shù)據(jù)庫文件可以含有多個數(shù)據(jù)表。
2.?dāng)?shù)據(jù)表(Table)
簡稱表,由一組數(shù)據(jù)記錄組成,數(shù)據(jù)庫申的數(shù)據(jù)是以表為單位進(jìn)行組織的。一個表是一組相關(guān)的按行排列的數(shù)據(jù);每個表中都含有相同類型的信息。表實際上是一個二維表格,例如,一個班所有學(xué)生的考試成績,可以存放在一個表中,表中的每一行對應(yīng)一個學(xué)生,這一行包括學(xué)生的學(xué)號,姓名及各門課程成績。
3.記錄(Record)
表中的每一行稱為一個記錄,它由若干個字段組成。
4.字段(Field)
也稱域。表中的每一列稱為一個字段。每個字段都有相應(yīng)的描述信息,如數(shù)據(jù)類型、數(shù)據(jù)寬度等。
5.索引(Index)
為了提高訪問數(shù)據(jù)庫的效率,可以對數(shù)據(jù)庫使用索引。當(dāng)數(shù)據(jù)庫較大時,為了查找指定的記錄,則使用索引和不使用索引的效率有很大差別。索引實際上是一種特殊類型的表,其中含有關(guān)鍵字段的值(由用戶定義)和指向?qū)嶋H記錄位置的指針,這些值和指針按照特定的順序(也由用戶定義)存儲,從而可以以較快的速度查找到所需要的數(shù)據(jù)記錄。
6.查詢(Query)
一條SQL(結(jié)構(gòu)化查詢語言)命令,用來從一個或多個表中獲取一組指定的記錄,或者對某個表執(zhí)行指定的操作。當(dāng)從數(shù)據(jù)庫中讀取數(shù)據(jù)時,往往希望讀出的數(shù)據(jù)符合某些條件,并且能按某個字段排序。使用SQL,可以使這一操作容易實現(xiàn)而且更加有效。SQL是非過程化語言(有人稱為第四代語言),在用它查找指定的記錄時,只需指出做什么,不必說明如何做。每個語句可以看作是一個查詢(query),根據(jù)這個查詢,可以得到需要的查詢結(jié)果。
7.過濾器(Filter)
過濾器是數(shù)據(jù)庫的一個組成部分,它把索引和排序結(jié)合起來,用來設(shè)置條件,然后根據(jù)給定的條件輸出所需要的數(shù)據(jù)。
8.(view)
數(shù)據(jù)的視圖指的是查找到(或者處理)的記錄數(shù)和顯示(或者進(jìn)行處理)這些記錄的順序。在一般情況下,視圖由過濾器和索引控制。
        下一節(jié)我們將用VB編一個簡單的瀏覽數(shù)據(jù)庫的程序。事實上這個例子并不需要編寫代碼,只是調(diào)用VB的固有控件,你將深刻體會到用VB編程的簡單易學(xué),功能強(qiáng)大。
用數(shù)據(jù)庫可以建立訪問數(shù)據(jù)庫的應(yīng)用程序,這樣的程序可以顯示、編輯和更新各類已有的數(shù)據(jù)庫中的信
息,包括Microsoft Access、Btrieve、dBASE,Microsoft,FoxPro及Paradox等。同時,用數(shù)據(jù)控件可以像訪問數(shù)據(jù)庫一樣訪問Microsoft Excel、Lotusl—2—3和標(biāo)準(zhǔn)ASCⅡ文本文件。此外,用數(shù)據(jù)控件還可以訪問和操作遠(yuǎn)程的開放數(shù)據(jù)庫互連(ODBC)數(shù)據(jù)庫,例如Microsoft SQLServer和Oracle。
數(shù)據(jù)控件和其它控件—樣,可以把數(shù)據(jù)控件添加到窗體中,以建立數(shù)據(jù)庫應(yīng)用程序;可以根據(jù)需要
在窗體上建立多個數(shù)據(jù)控件,不過,對每個需要操作的數(shù)據(jù)表一般使用一個致的數(shù)據(jù)控件。使用數(shù)據(jù)控件不用編寫代碼就可以實現(xiàn)下列操作:
·與本地或遠(yuǎn)程數(shù)據(jù)庫建立連接。
·對連接的數(shù)據(jù)庫執(zhí)行SQL查詢、打開指定的數(shù)據(jù)表或定義記錄集。
·把數(shù)據(jù)字段傳送到各種約束控件,并可在約束控件中顯示或修改數(shù)據(jù)字段的值。
·根據(jù)約束控件中數(shù)據(jù)的變化,添加新記錄或更新數(shù)據(jù)庫。
·捕獲訪問數(shù)據(jù)時出現(xiàn)的錯誤。
·關(guān)閉數(shù)據(jù)庫。

一個簡單例子(使用數(shù)據(jù)控件)

我們通過一個簡單例子來說明數(shù)據(jù)控件的一般用法。在這個例子中,將瀏覽一個數(shù)據(jù)庫中的數(shù)據(jù)。為了在
應(yīng)用程序中使用數(shù)據(jù)控件,可以按如下步驟操作:
(1)執(zhí)行“文件”菜單中的“新建工程”命令,建立一個新工程。
(2)在工具箱中選擇數(shù)據(jù)控件圖標(biāo),然后在窗體上畫一個數(shù)據(jù)控件。
(3)通過屬性窗口設(shè)置數(shù)據(jù)控件的屬性(見表)
屬 性 設(shè)置值
Caption Data1
Connect Access
DatabaseName "c:\dbmdb\db1.mdb"(數(shù)據(jù)庫的路徑)
Readonly True
RecordSetType 0-Table
RecordSource Table1


Connect屬性用來指定所鏈接的數(shù)據(jù)庫,在屬性窗口中,單擊該屬性右端的箭頭,將下拉顯示可以鏈接的數(shù)
據(jù)庫管理系統(tǒng), 可從中選擇一種?;贛icrosoft Access格式的數(shù)據(jù)庫應(yīng)選擇“Access”。
DatabaseName 屬性用來設(shè)置要打開的數(shù)據(jù)庫的名字??梢灾苯虞斎耄部梢詥螕粲叶说?#8220;...”,在打開
的對話框中選擇所需要的數(shù)據(jù)庫的文件名。
如果把ReadOnly屬性設(shè)置為 True,則只能讀取數(shù)據(jù)庫中的數(shù)據(jù),不能修改。如果想修改數(shù)據(jù)庫中的
數(shù)據(jù),則必須把該屬性設(shè)置為False。
RecordsetType 屬性用來設(shè)置RecordsetType 對象的類型,有三種類型,0-table,1-Dynaset,2-snapshot。
可從中選一種。
RecordSource 屬性用來指定所使用的表名,單擊右端的箭頭,將下拉顯示數(shù)據(jù)庫中的所有的表名可從中選擇
所需的表。

(4)在窗體上畫7個標(biāo)簽和7個文本框,各文本框?qū)傩匀缦拢?/p>

對象 屬性 設(shè)置值 對象 屬性 設(shè)置值
文本框1 DataFiled 編號 文本框2 DataFiled 姓名
Datasource Data1 Datasource Data1
Text 空白 Text 空白
文本框3 DataFiled 性別 文本框4 DataFiled 出生日期
Datasource Data1 Datasource Data1
Text 空白 Text 空白
文本框5 DataFiled 職務(wù) 文本框6 DataFiled 文化程度
Datasource Data1 Datasource Data1
Text 空白 Text 空白
文本框7 DataFiled 工資  
Datasource Data1
Text 空白

DataFiled 屬性是要顯示表中字段的名字,DataSource屬性是數(shù)據(jù)控件的名稱(Name 屬性)。必須先設(shè)置
DataSource屬性,然后才能設(shè)置DataField屬性。單擊DataField屬性從下拉菜單中選擇需要的字段名。
7個標(biāo)簽的Caption屬性分別設(shè)置為“編號”,“姓名”,“性別”,“出生日期”,“職務(wù)”,“文化程
度”,“工資”。
(5)單擊工具條的運行按扭或按F5以運行程序,通過數(shù)據(jù)控件(Data1)的前后按扭來瀏覽數(shù)據(jù)庫的內(nèi)容。
(6)單擊VB菜單的“文件”選項的“保存工程”,保存后在“文件”菜單中選“生成xxx.exe文件”(xxx是
文件名)編譯成可執(zhí)行文件。這樣的.exe文件可脫離VB的編程環(huán)境運行。
    VB數(shù)據(jù)庫編程入門講座到此就告一段落,有關(guān)VB編程的語法規(guī)則已有許多資料介紹,它也不是本站介紹的主要內(nèi)容,請網(wǎng)友自行學(xué)習(xí)。本站今后將陸續(xù)介紹一些與數(shù)據(jù)庫編程有關(guān)的控件,到時歡迎瀏覽。另外本站的“VB數(shù)據(jù)庫”專欄介紹了一些數(shù)據(jù)庫編程的高級部分,如:多機(jī)環(huán)境下的數(shù)據(jù)庫編程,網(wǎng)絡(luò)數(shù)據(jù)庫的編程及編程的經(jīng)驗一并歡迎光臨。(完)

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
《Visual Basic 6.0項目教程(第3版)》項目8 創(chuàng)建數(shù)據(jù)庫應(yīng)用程序
SQL Server 2008數(shù)據(jù)庫實用教程-第11章
VFP與SQL Server的連接
在VB中用數(shù)據(jù)報表設(shè)計器創(chuàng)建報表
VB數(shù)據(jù)庫編程技術(shù)
VBA數(shù)據(jù)類型比較
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服