亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        在VB中使用ADO訪問SQL

        2008-01-01 00:00:00
        都市家教·上半月 2008年4期

        摘要:介紹了在VB中使用ADO對SQL Server數(shù)據(jù)庫調(diào)用的方法,并給出了一個用VB設(shè)計C/S模式下學生成績打印系統(tǒng)的實例。

        關(guān)健詞:VB ADOSQL Server C/S

        SQL Server是微軟公司推出的中小型網(wǎng)絡數(shù)據(jù)庫系統(tǒng),它具有強大的數(shù)據(jù)處理功能和可靠的安全性能,已經(jīng)成為新一代網(wǎng)絡應用程序的最佳數(shù)據(jù)庫解決方案之一。網(wǎng)絡環(huán)境下的客戶端應用程序一般采用客戶/服務器(Clienf/Server,即c/s)模式;而用于構(gòu)建客戶端的編程工具較多,如VB、PB、Delphi等。VB作為一種面向?qū)ο蟮目梢暬幊坦ぞ撸哂泻芨叩木幊绦?,對于一般中小型的信息管理系統(tǒng)來說,用其作為SQL Server 2000數(shù)據(jù)庫管理系統(tǒng)的客戶端開發(fā)工具是一種合理的選擇。

        一、ADO對象模型

        在Visual Basic中,可用的數(shù)據(jù)庫訪問接口有三種:Active數(shù)據(jù)對象(Active Data Objects,簡稱ADO)、遠程數(shù)據(jù)對象(RDO)和數(shù)據(jù)訪問對象(DAO)。

        Active數(shù)據(jù)對象(Active Data Objects)ADO是一種提供訪問各種數(shù)據(jù)類型的連接機制,是比RDO和DAO更加簡單,而又更加靈活的對象模型。ADO設(shè)計為一種極簡單的格式,通過ODBC的方法同數(shù)據(jù)庫接口,可以使用任何一種ODBC數(shù)據(jù)源,即不只適合于SQL Server、Oracle、Access等數(shù)據(jù)庫應用程序,也適合于Excel表格、文本文件、圖形文件和無格式的數(shù)據(jù)文件。ADO是基于OLE-DB之上的技術(shù),因此ADO通過其內(nèi)部的屬性和方法提供統(tǒng)一的數(shù)據(jù)訪問接口方法更適合于大流量和大事務量的網(wǎng)絡計算機系統(tǒng)。

        ADO 模型中頂層有三個對象:Connection、Command、Recordset。Connection對象表示打開的、與數(shù)據(jù)源的連接;Command對象定義了對數(shù)據(jù)源執(zhí)行的指定命令,可接收SQL語句、表的名稱和存儲過程的名稱,執(zhí)行SQL查詢、插入、更新記錄等;Recordset對象表示的是來自基本表或命令執(zhí)行結(jié)果的記錄全集,操作來自提供者的幾乎所有數(shù)據(jù)。ADO數(shù)據(jù)模型中的屬性包括:Proprties(屬性)、Errors(錯誤)、Parameters(參數(shù))及Fidlds(字段)。

        二、ADO控件說明

        ADOData控件使用ADO快速地創(chuàng)建一個到數(shù)據(jù)庫的連接,它最重要的兩個屬性ConnectionString和Recordsource。ConnectionString設(shè)置控件的連接字符串,用于建立與數(shù)據(jù)庫的連接,例如:Connec-tionString =“Provider= sqloledb;Server= local;Database=pubs;Uid= sa;Pwd = sa”。Provider=sqloledb說明驅(qū)動程序提供者是sqloledb;Server指明SQL Server數(shù)據(jù)庫服務器的名稱或IP 地址;Database指明連接的數(shù)據(jù)庫名稱;Uid與Pwd分別指明登錄數(shù)據(jù)庫的用戶名與密碼。Recordsource屬性為記錄源,通過設(shè)置該屬性控制從數(shù)據(jù)庫中返回的記錄集合。例如:設(shè)置RecordSource=“select * from QQfriend”,將該屬性設(shè)置為一條SQL語句,從數(shù)據(jù)庫返回滿足查詢條件的記錄。

        三、ADO編程實例

        在本編程實例中,可按學生學號,完成學生成績的查看與打印。

        在此學生成績打印程序中,要先在客戶端的數(shù)據(jù)源管理工具中建立好數(shù)據(jù)源。然后使用VB中的ADO Data控件MicrosofiActiveXDataObjects (ADO)快速地創(chuàng)建一個到數(shù)據(jù)庫的連接。ADO控件不在當前工程的控件工具箱中,需要通過“工程”菜單“部件”選項,選中“Microsoft ADO Data Control 6.0”后將此控件加入工具箱即可。其屬性的設(shè)置主要包括以下方面:即使用ODBC數(shù)據(jù)資源的名稱,訪問數(shù)據(jù)庫的用戶名和密碼,記錄源的命令類型及命令文本等。

        整個成績打印程序一共有二個窗口。主窗口如圖1所示,窗口中的按鈕實現(xiàn)按學生學號打印學生成績功能。

        按學生學號打印學生成績窗口如圖2所示,此窗口主要包括一個隱藏的ADO控件、數(shù)據(jù)控件文本框和一組命令按鈕。ADO控件的主要功能是建立客戶端與服務器端數(shù)據(jù)庫的連接;數(shù)據(jù)控件文本框用于接收用戶輸入數(shù)據(jù),確定訪問數(shù)據(jù)庫的條件;命令按鈕中的確定按鈕通過click事件嵌入SQL命令語句來獲取數(shù)據(jù),并把數(shù)據(jù)傳遞該客戶端的ADO對象,程序就可以實現(xiàn)查詢結(jié)果數(shù)據(jù)的顯示和打印。

        具體設(shè)計步驟設(shè)計如下:

        1、設(shè)置ADO Data控件的屬性如下:

        ODBC數(shù)據(jù)資源名稱為 “mydata”

        用戶名username為“stu”

        用戶登錄密碼passwd為“111111”

        記錄源命令類型cmdtype設(shè)置為“adcmdUknown”。命令文本為“select * from scores”。

        2、數(shù)據(jù)說明

        設(shè)計程序前,先在SQL數(shù)據(jù)庫中建立相關(guān)視圖,視圖結(jié)合了表(Tables)和查詢(Queries)兩者的特性。用戶可以像使用一個查詢一樣,從一個或多個相關(guān)的表中提取一個數(shù)據(jù)集,并且永久把存貯結(jié)果存貯到磁盤。設(shè)置ADO Data控件的屬性時,記錄源命令文本“select * from=scores”中的scores為SQL數(shù)據(jù)庫mydata中一個視圖,其中包含了學生的學籍基本信息和成績信息,如學生姓名、號、性別、所在院系、所學專業(yè)、入學時間、畢業(yè)時間、各學期成績等。

        窗口中“確定”按鈕程序段所涉及到的主要代碼為:

        SQL1= “select from scores where xh=” + Trim(Text1.Text) 查詢滿足輸入條件的學生成績

        Adodc1.RecordSource=SQL1

        Adodc 1.Refresh用于刷新顯示數(shù)據(jù)

        StrQuery “select from scores where xqq=2 and cj>=60 and xh=”+Trim(Text1.Text1)

        查詢滿足具體學年、學期條件的記錄

        Adodc 1.RecordSource=StrQuery

        Adodc 1.Refresh

        3、學生成績的查看與打印

        學生成績的查看與打印是程序?qū)嵗暮诵墓δ懿糠帧?/p>

        涉及到的主要代碼:

        AutoRedraw =True

        BackColor=RGB(155,255,255)

        DrawWidth= 1.5

        相關(guān)打印參數(shù)設(shè)置

        FontBold=True

        FontSize= 12

        CurrentX = 118.5

        CurrentY =9

        定位輸出內(nèi)容的坐標位置

        StrQuery=\"select * from scores where xqq=2 and xh=” + Trim(Text1.Text)

        用于查詢滿足條件的記錄,即查找該學號第二學期所有及格的課程及成績

        Adodc1.RecordSource=StrQuery

        Adodc1.Refresh

        nums=Adodc1.Recordset.RecordCount 統(tǒng)計某一學期總共的課程數(shù)

        If Adodc 1.Recordset.EOF=False Then 判斷是否循環(huán)完畢

        Adodc 1.Recordset.MoveNext 記錄指針下移

        X11=30.5

        Y11= 47.5

        X12= 79.5

        Yl2=47.5

        dy=4.55

        Printer.FontBold=True

        Printer.CurrentX = 30.5

        Printer.CurrentY = 42

        Printer.Print “課程名稱”

        Printer.CurrentX =79.5

        Printer.CurrentY =42

        Printer.Print “成績”

        從打印機上輸出學生成績信息

        程序?qū)嵗捎肅/S方式,實現(xiàn)了在VB中使用ADO數(shù)據(jù)對象對SQL數(shù)據(jù)庫的訪問,優(yōu)點在于代碼簡潔,易于開發(fā)者掌握。用戶掌握后,可自行開發(fā)滿足特定需求的應用程序。

        參考文獻:

        [1]白 鵬.Visual Basic編程實例與技巧數(shù)據(jù)庫編程 [M] .北京:科學出版社,2003.

        [2][美]Konrad King SQL Tips Techniques [M] 2003.

        [3]將鐵海,劉朝暉.ADO 控件訪問數(shù)據(jù)庫的各種技巧探討 [J].微計算機信息,2003.19(1)

        [4]馬紹良,李鳳保,謝閱.用ODBC實現(xiàn)SQL Server 2000在VB中的應用 [J] 計算機應用,2003(1).

        (123000阜新高等??茖W校)

        亚洲色AV性色在线观看| 丰满少妇被粗大猛烈进人高清| 国产一区二区三区尤物| 亚洲女人毛茸茸粉红大阴户传播| 小sao货水好多真紧h无码视频| 韩国19禁主播深夜福利视频| 亚洲黄片久久| 免费人成网站在线视频| 欧美激情一区二区三区| 国内揄拍国内精品少妇国语| 99久久精品久久久| 亚洲日本一区二区在线| 中文字幕人妻无码视频| 丰满五十六十老熟女hd| 日本老年人精品久久中文字幕| 久久99国产综合精品女同| 中文字幕日韩欧美一区二区三区| 免费a级毛片无码a| 久久99国产亚洲高清观看首页| 丝袜美腿国产一区二区| 久久香蕉国产线看观看精品yw| 亚洲羞羞视频| 成人在线视频自拍偷拍| 免费观看91色国产熟女| 无码av免费精品一区二区三区| 欧美日韩中文亚洲另类春色| 国产精品国产三级国产an不卡| 伊甸园亚洲av久久精品| 亚洲尺码电影av久久| 最新国产精品精品视频| 亚洲精品有码日本久久久 | 精品国产乱码久久久久久影片| 日日摸夜夜欧美一区二区| 免费国产自拍视频在线观看| 黑人巨大精品欧美| 日韩无套内射视频6| aⅴ色综合久久天堂av色综合| 蜜桃传媒网站在线观看| 日本乱偷人妻中文字幕在线| 无遮挡中文毛片免费观看| 精品日韩一区二区三区av|