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

VB連接數據庫

2010-06-13 11:32:56張妍垚孫曦東
微處理機 2010年3期
關鍵詞:數據庫用戶

張妍垚,孫曦東

(中國電子科技集團公司第四十七研究所,沈陽110032)

1 引言

器件目錄數據庫系統開發設計的目的是為了提高長期以來器件數據散亂、查找困難等問題。隨著計算機技術的發展及其在數據庫上的強大應用,能夠幫助創建出完備的器件目錄的應用程序。

2 引入數據庫軟件的原由

在VB編程中常要與數據庫打交道,雖然可以選擇各種數據庫格式,但對于數據量較小的應用,一般選用Access作為數據庫。因為Access數據庫比較簡單,功能也比較齊全,數據的備份、拷貝都很方便,且程序發布時不需要額外單獨安裝其它的數據庫管理軟件。因此,在功能能夠滿足要求的條件下,Access數據庫往往成為小型數據庫軟件的首選。而且最容易使用的還是Visual Basic的數據庫格式—Microsoft Access,因為 Visual Basic與Microsoft Access互相支持,可以使用豐富的特性集。

3 數據庫基本概念

3.1 表

表是由行和列組成的數據集合,行叫做記錄(Record),列叫做字段(Field)。

3.2 關系

所謂表和表之間的關系,一般情況下就是指某個表中的主關鍵字和另外一個表中的外關鍵字之間的對應關系。

3.3 查詢

查詢不是數據庫中存儲的表,而是按照各種規則和要求“查”出來的表。

4 VB數據庫訪問技術

Jet數據庫引擎(Microsoft Joint Engineering Technologe)是應用程序和數據庫之間的一種接口。它將與數據庫相關的內容管理、游標管理和錯誤處理等具體而復雜的細節問題抽象為一個既高度一致又相對簡化的編程接口。對所支持的數據庫提供統一的外部接口,將對記錄的操作轉化為對數據庫的物理操作?;赩B的數據庫應用程序從邏輯上可分為三部分:用戶接口、數據庫引擎和數據庫存儲。由用戶接口實現對具體數據庫的連接,通過數據庫引擎完成數據庫存儲。

ODBC Direct技術能給應用程序數據庫訪問加入全新的視角,可以檢索一個數據庫的大量信息。應用程序向ODBC發出SQL語句并接收作為語句結果的數據。數據源是已安裝的數據庫服務器,ODBC把特殊的ODBC驅動程序和一個指定的數據庫聯合起來,數據源定位在本地硬盤或網絡上。

最主要的就是用Active X數據對象ADO(active x data objects)這種新的數據訪問標準代替了原有的訪問對象DAO(date access object)和遠程數據訪問對象RDO(remote date objects)。

5 ADO組件

Microsoft ActiveX Data Objects(ADO):使客戶端應用程序能通過OLE DB提供者訪問和操作數據庫服務器中的數據。

ActiveX Data Objects Extensions for DDL and Security(ADOX):將ADO擴展為包括創建、修改和刪除的模式對象,如表格和過程,以及包括用于維護用戶和組以及管理對象權限的安全對象。

ActiveX Data Objects(Multidimensional)(ADO MD):將ADO擴展為包括指定到多維數據的對象,并允許瀏覽多維模式、查詢立方和檢索結果。

ADO具有高度的靈活性,它可以使用相同的編程模式連接到不同的數據提供者,而不管給定提供者的特定特性,具有較低的內存占用率。

具有遠程數據服務(RDS)功能,通過RDS可以在一次往返過程中將數據從服務器移動到客戶端應用程序或Web頁,并在客戶端對數據進行處理后將更新結果返回服務器。

同傳統的數據對象層次(DAO和RDO)不同,ADO可以獨立創建,也可以只創建一個“Connection”對象,然后由多個獨立的“Recordset”對象來使用它。

ODBC本身是以SQL Server、Oracle等關系數據庫作為訪問對象,而OLE DB則不僅限于此,它還可以對電子郵件、文本文件、復合文件、數據表等各種各樣的數據通過統一的接口進行存取。

6 VB6.0在器件目錄數據庫中的應用

首先在Access中創建一個名為“mulu”的表,該表由以下9個字段組成:ID為Access的“mulu”表的主鍵字段,然后直接設置后8個字段,在輸入完了mulu表的各個字段之后,關閉表設計器,Access會提示是否要進行保存表,選擇“是”,然后為表起名為“mulu”。因為沒有定義主鍵(primary Key),Access會提示為表加上一個主鍵,按提示將ID設置為主鍵即可。設置完以上字段后,再調用Visual Basic程序。

調用Visual Basic程序先安裝ADO,在VB的“工程”/“引用”對話框中選擇“ActiveX Data Object 2.8 Library”(ADODB)。并將ADO數據控件添加到工具箱中,選擇“工程”菜單中“部件”項,選中“Microsoft ADO Data Control 6.0(OLEDB)”,并單擊“確定”按鈕。

然后創建一個新窗體,設計新窗體屬性。在工具箱中雙擊ADO數據控件的圖標(Adodc),向窗體中添加一個ADO控件,設計ADO控件屬性,選擇使用連接字符串后,選擇生成。在提供程序中選擇“Microsoft OLE DB Provider for ODBC Drivers“后,選擇下一步。連接中指定數據源選擇使用數據源名稱,然后在下拉列表中選擇MS Access Database,在輸入要使用的初始目錄中輸入記錄源中Access數據庫的名稱后,測試連接,提示測試連接成功后點擊確定,否則重新輸入。命令類型選擇2-adCmdTable,表或存儲過程名稱選擇Access數據庫的名稱,即設置完ADO屬性。

對每一個想訪問的Access數據庫字段,在窗體上添加一個文本框,并且把VB6.0的數據控件對象與數據綁定控件一起,把數據控件放在窗體上,并設置屬性:第一個屬性DataSource,返回或設置控件的數據源。第二個屬性DataMember屬性,返回或設置要使用的源中的指定數據集。第三個屬性DataField,返回或設置要綁定控件的指定字段。作為綁定到窗體控件中數據的一個直接數據源,要將數據環境對象中一個“用戶”Command對象的字段“用戶名”綁定到窗體中的一個TextBox控件中去,則需要執行下列步驟:先將一個TextBox控件放到Visual Basic窗體中;在“屬性”窗口中,單擊Datasource(“數據源”)屬性,選擇您想綁定到控件的 DataEnvironment對象,如“Adodc1”;單擊 DataMember屬性,并選擇數據環境中的Command對象“rst用戶”;單擊DataField屬性,從綁定到控件的“rst用戶”Command對象中選擇字段“用戶名”。這樣,就完成了綁定工作。還有一種更快捷、簡便的方法,就是將需要綁定的Command對象拖到窗體中,則窗體就會自動生成這個對象所有字段的標簽(Label)名和數據操作及顯示區(TextBox)。

編程訪問數據環境設計器中的對象。要從一個Visual Basic窗體中編程訪問數據環境中的對象“用戶”記錄,則按照以下步驟執行:在窗體中建一個ListBox控件,在控件中輸入目錄名。附加到這個控件的代碼是用于將“用戶”表中的記錄在其余的Text-Box控件中顯示。則在按鈕的Click事件中添加下面的代碼:

用戶.Text=rst.Fields(索引標識)

示意程序如下(程序示意圖如下):

Dim con As ADODB.Connection

Dim rst As ADODB.Recordset

Dim strsql,strsql1 As String

Set con=New ADODB.Connection

Set rst=New ADODB.Recordset

con.ConnectionString="Provider=MSDASQL.1;Persist Security Info=False;Data Source=MS Access Database;Initial Catalog=e:mulu.mdb"

con.Open

strsql1="select*from[mulub]where[name]like '" & Trim(List1.Text)& " '" 'rst.Open strsql1,con,adOpenKeyset,adLockOptimistic

With rst

.CursorLocation=adUseClient

.CursorType=adOpenDynamic

.LockType=adLockOptimistic

.Open strsql1,con,3,3

End With

If rst.RecordCount > 0 Then

Text4.Text=rst.Fields(0)

If Not IsNull(rst.Fields(2))Then

Text1.Text=rst.Fields(2)

Else

Text1.Text=""

End If

If Not IsNull(rst.Fields(3))Then

Text2.Text=rst.Fields(3)

Else

Text2.Text=""

End If

If Not IsNull(rst.Fields(4))Then

Text3.Text=rst.Fields(4)

Else

Text3.Text=""

End If

If Not IsNull(rst.Fields(6))Then

Text5.Text=rst.Fields(6)

Else

Text5.Text=""

End If

Else

MsgBox("沒發現項目名稱")

End If

rst.Close

con.Close

End sub

圖1 程序簡單示意圖

從上面例子可以看出,與一個ADO Recordset關聯的所有方法都可以應用于rst用戶,例如添加、更新、刪除和遍歷記錄的方法。

7 結束語

從上面說明可以看出,VB中的數據環境就象一個大的數據控件一樣,它可以在不同的窗體中引用和操作。VB提供了強有力的數據庫存取能力,將WINDOWS的各種先進特性與強大的數據庫管理功能有機地結合在一起。VB有很多有關文本文件的特性,可以使用這些功能打開文本文件并且讀取文本數據。這對于我們開發應用程序來說,無疑提供了一個很好的數據工具。

[1][美]E Winemiller,J Roff,B Heyman,R Groom,著.Visual Basic 6.0 數據庫開發[M].顧斌,楊德斌,譯,北京:清華大學出版社,2001.

[2]林永,張樂強.Visual Basic 6.0用戶編程手冊[M](第二版).北京:人民郵電出版社,2002.

[3]李楠,李志強.Visual Basic 6.0入門與提高[M].北京:人民郵電出版社,1998.

猜你喜歡
數據庫用戶
數據庫
財經(2017年15期)2017-07-03 22:40:49
數據庫
財經(2017年2期)2017-03-10 14:35:35
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
數據庫
財經(2016年15期)2016-06-03 07:38:02
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
Camera360:拍出5億用戶
創業家(2015年10期)2015-02-27 07:55:08
100萬用戶
創業家(2015年10期)2015-02-27 07:54:39
主站蜘蛛池模板: 露脸一二三区国语对白| 一级在线毛片| 激情综合网激情综合| 天堂在线视频精品| 国产丝袜无码一区二区视频| 亚洲视频免| 日本亚洲成高清一区二区三区| 无码'专区第一页| 国产高清免费午夜在线视频| 黄色成年视频| 日本精品影院| hezyo加勒比一区二区三区| 91人妻日韩人妻无码专区精品| 婷婷六月激情综合一区| 亚洲一区网站| 免费视频在线2021入口| 国产丝袜啪啪| 91精品国产一区| 亚洲国产精品VA在线看黑人| 国产亚洲欧美另类一区二区| 国产激情国语对白普通话| 欧美伦理一区| 久久久精品久久久久三级| 无码有码中文字幕| 九色视频在线免费观看| 欧美在线导航| 久久亚洲国产最新网站| 久久91精品牛牛| 国产精品亚洲专区一区| 性色一区| www.国产福利| 国产91无毒不卡在线观看| 国产特一级毛片| 国产激情第一页| julia中文字幕久久亚洲| 免费一极毛片| 午夜啪啪网| 久久精品丝袜| 色综合五月婷婷| 欧美成人精品一级在线观看| 国产成人区在线观看视频| 97精品国产高清久久久久蜜芽| 2020精品极品国产色在线观看| 在线色国产| 亚洲区欧美区| 欧美黄网站免费观看| 亚洲中文在线看视频一区| 香蕉国产精品视频| 狠狠干综合| 国产精品天干天干在线观看| 午夜无码一区二区三区在线app| 性视频一区| 狠狠躁天天躁夜夜躁婷婷| 久草国产在线观看| 无码久看视频| 久久国产毛片| 欧美成人综合在线| 67194亚洲无码| 亚洲欧美自拍视频| 亚洲日本韩在线观看| 免费jizz在线播放| 国内精品伊人久久久久7777人| 国产凹凸一区在线观看视频| 色综合热无码热国产| 久久夜色精品国产嚕嚕亚洲av| a在线亚洲男人的天堂试看| 老司国产精品视频91| 91免费在线看| 亚洲色图欧美在线| 国产在线观看成人91| www.youjizz.com久久| 18禁黄无遮挡免费动漫网站| 成人免费视频一区| 亚洲第一香蕉视频| 九九热视频精品在线| 高清不卡一区二区三区香蕉| 亚洲日本中文字幕乱码中文| 亚洲不卡网| 国产AV无码专区亚洲A∨毛片| 四虎综合网| 日韩精品成人在线| 国产91高清视频|