亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

使用ADO.NET設計數據庫應用程序

2019-11-18 19:46:47
字體:
來源:轉載
供稿:網友

  認識ADO和ADO.Net

  ActiveX Data Object(簡稱ADO)是微軟提供的數據訪問模型,依據這個模型可很輕松的操作數據庫。同時ADO受到微軟所以開發工具的支持,所以無論是VB、VC、asp開發都可以使用。所以開發ASP數據庫應用程序,只需在代碼中嵌入SQL(結構化查詢語言)命令,用戶就可以很輕松的輸入、更新、和刪除后臺的數據庫記錄。當用戶端的瀏覽器填好表單所要求輸入的資料并按下“Submit(確認)”按鈕后,經過互聯網、內聯網傳送HTTP請求到WEB服務器,該請求在WEB服務器執行一個表單所指定的Active Server Pages程序(后綴名為.ASP的文檔)。

  從ADO.Net不僅僅是ADO的一個簡單升級,它是微軟.NET戰略的一個重要組成部分,那么到底和以前有什么不同呢?現在就讓本文來告訴你。

  以前在ADO中進行數據處理的主要方法是OLEDB,現在在ADO.Net中也是如此。但是微軟為了更好地支持目前廣泛使用的兩個數據庫Oracle和SQL Server對OLEDB做了專門的擴展,它們分別是OracleClient和SQLClient 類,當然由于數據庫產品很多,為了便于以前的OLEDB的程序升級,故也對OLEDB本身做了升級處理。在.Net中表現為OLEDB類。

  那么這三個類——OLEDB、OracleClient和SQLClient在編程使用上到底有什么不同呢?值得慶幸的是在.Net中進行數據庫的編程時,不管你使用上面提到的3個類中的哪一個類,這3個類在語法和用法上都大同小異,可以用一通百通來形容。

  怎樣學習ADO.Net技術

  筆者在學習和使用了ADO.Net編程后,總結出下面3個必需的步驟,而且這3個步驟的順序是絕對不可以調換的,如果在以后的編程中發現3個步驟的順序換了或缺了一個步驟,那么你的代碼肯定是錯的:

  1.使用對應類中的連接方法來連接數據庫。如使用SQLClient類,那么就用SqlConnection1建立數據庫的鏈接。

  2.打開此鏈接。

  3.執行對應類中的命令方法來指定要執行的SQL語句。如使用SQLClient類就使用SqlCommand執行指定的SQL語句。

  下面舉出的兩個例子就是在.Net中使用ADO.Net編程的代碼。由于SQL Server 在使用中比Oracle簡單,所以這里的數據庫使用Microsoft的SQL Server 2000。原因是它在安裝后無須配置就可以直接使用。既然訪問的是SQL Server,那么使用的類當然是SQLClient類。這兩個例子是:

  1.在數據庫中對數據進行添加,刪除,修改。

  2.利用ADO技術建立一個SQL Server 2000的數據庫。

  例 一

  啟動SQL Server2000,然后建立一個數據庫和一個表,并且在表中一定要有主鍵,隨便輸入一些數據。完成后保存此表。

  本文使用的表結構如下:


id列int型標志列主鍵
d列char型  

  表名:使用系統默認的表名table1

  然后打開VS.Net建立一個新的工程,并從工具箱中將“SqlDataAdapter”控件拖動到窗口底部,隨后“數據適配器配置向導”窗口會自動運行,按照向導提示完成操作(如圖)。

  需要注意的是,在出現的“生成SQL語句”窗口中要輸入標準的select語句,在本例中我們將從表Table1中返回id和d這兩列。所以應該輸入“SELECT id d FROM Table1”語句,當然單擊“查詢生成器”按鈕系統也可以自動生成這條語句。

  當完成“數據適配器配置向導”后,你會在窗口的底部發現系統自動添加了“SqlConnection1”。接下來右擊“SqlDataAdapter1”,在快捷菜單中選擇“生成數據集”,隨后可以看見“生成數據集”設置窗口,保持默認設置并單擊“確定”。現在又會發現在設計窗口下多了一個“Dataset11”。

  到此為止,就差最后一個控鍵“SqlCommand”,我們只要在工具欄中將它拖放過來并修改其屬性的“Connection”設置為“SqlConnection1”,并在“CommandText”屬性中利用“查詢生成器”為其生成select語句即可。到現在為止,我們就完成了ADO.Net訪問數據庫的一大半了。

  網格是顯示數據的最好方法,為了讓數據顯示在網格中我們需要添加此控件并且修改其屬性。添加的方法就是直接從工具箱中將它拖過來即可。不過它的屬性設置倒是很簡單,只要將“Datasource”設置為“Dataset11.table”即可,table是表示表的名字。

  最后添加兩行代碼即可完成對數據的添加、刪除、修改的操作。

  在Form1_Load部分加入“Sql DataAdapter1.FillDataSet11 ″Table1″”,代碼:

PRivate Sub Form1_LoadByVal sender As System.Object ByVal e As System.EventArgs Handles MyBase.Load
 SqlDataAdapter1.FillDataSet11 ″Table1″'將表中的數據添加到DataSet1中。
End Sub

  添加一個Button1在Button1_Click中加入“SqlDataAdapter1.UpdateDataSet11 ″Table1″”代碼。

Private Sub Button1_ClickByVal sender As System.Object ByVal e As System.EventArgs Handles Button1.Click
 SqlDataAdapter1.UpdateDataSet11″Table1″' 完成數據庫的添加、刪除、修改功能。
End Sub 

  程序說明:其中SqlDataAdapter1.Fil語句是把表中具體的數據添入DataSet11后,而SqlDataAdapter1.Update是表示當完成對數據的修改后使用Update進行數據庫的更新,使修改的數據生效。按“F5”運行程序,你就可以看見表中的數據都顯示出來了,同時你可以隨意對它們進行修改。如要刪除數據,只要按下鍵盤上的“del”鍵即可。

  例一中使用控件的簡單介紹:

SqlDataAdapter:建立數據庫的連接,完成數據庫的添加、刪除、修改功能的配置。
SqlConnection:建立連接字符為SqlCommand提供連接依據。
DataSet1:加載表結構和表數據,以便在表格中顯示具體數據。
SqlCommand:用來執行對表的各種具體的操作。

  例 二

  這里為了讓大家知道OLEDB和SQLClient在.Net中多么地接近,此例子將使用.Net中的OLEDB類。在這個程序中我們將使用ADO.Net中的OLEDB類和SQL語句來建立數據庫、表。接著上例添加2個命令按鈕,不修改任何屬性,并再加入如下代碼:

Public Class Form1
Inherits System.Windows.Forms.Form
Private Sub Button1_ClickByVal sender As System.Object ByVal e As System.EventArgs
Handles Button1.Click
 Dim con As New OleDb.OleDbCon nection″Provider=SQLOLEDB.1Integrated
 Security=SSPIPersist Security Info=FalseInitial Catalog=NorthwindData
 Source=.Use Procedure for Prepare=1Auto Translate=TruePacket
 Size=4096Workstation ID=JUse En cryption for Data=FalseTag with column collation
 when possible=False″'建立與數據庫的連接
 con.Open'打開連接
 Dim cmd As New OleDb.OleDbCommand″create database jk″ con '創建數據jk
cmd.ExecuteNonQuery'執行創建命令
 con.Close'關閉連接
 '建立數據庫
End Sub

  程序說明:在Button1_Click中可以看出連接對象的連接字符串和前面由系統自動生成的連接字符串不同。原因是我門要創建的新數據庫jk 還并不存在,所以為了使連接數據庫成功,并且有足夠的權利來建立jk數據庫,就必須通過以SQLServer管理員的身分連接一個SQL Server中已有的數據庫,獲得對整個SQL Server的訪問控制權限,再建立jk數據庫。這里連接的是Northwind數據庫。而后面的的Button2_Click直接連接到jk數據庫。因為我們要在jk數據庫中建立表。

Private Sub Button2_ClickByVal sender As System.Object ByVal e As
System.EventArgs Handles Button2.Click
Dim con2 As New OleDb.OleDbCon nection″Provider=SQLOLEDB.1Integrated
Security=SSPIPersist Security Info=FalseInitial Catalog=jkData Source=.Use
Procedure for Prepare=1Auto Trans late=TruePacket Size=4096Workstation ID=JUse
Encryption for Data=FalseTag with column collation when possible=False″'建立與數據庫的連接
con2.Open'打開連接
Dim cmd As New OleDb.OleDbCom mand″create table kkid int identity11 not
null constraint id primary keyname char4 not null″ con2 '建立表kk
cmd.ExecuteNonQuery
Dim cmd2 As New OleDb.OleDbCom mand″create table ppid int not nullads
char20 null″ con2 '建立表pp
cmd2.ExecuteNonQuery'執行建立表命令
con2.Close'關閉連接
'建立2個表
End Sub
End Class

  程序說明:程序中Button2_Click建立了兩個表,kk和pp。其中kk包括一個種子列并且設定為主鍵。pp是一個一般的表。其實通過Button2_Click中所用的方法我們還可以建立數據庫中的存儲過程、約束等。其方法就是將OleDbCommand后的建立表的SQL語句換成存儲過程、約束的SQL語句即可。由于SQL語句已經超出了本文的范圍,所以這里不做講解。

  總 結

  對于ADO.Net的編程來說除了要掌握ADO.Net的技術外,還必須掌握數據庫的一些知識。本文只是編寫了兩個簡單的數據庫程序,其目的是讓大家知道,ADO.Net的編程其實本身并不復雜。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
狠狠躁夜夜躁人人躁婷婷91| 精品久久久久久久久国产字幕| 午夜精品久久久久久久99热| 日韩美女免费观看| 亚洲伊人久久综合| 日韩毛片在线看| 亚洲国产精品999| 清纯唯美亚洲激情| 久久精品人人爽| 国产精品91在线观看| 北条麻妃在线一区二区| 日韩亚洲精品视频| 精品国产鲁一鲁一区二区张丽| 狠狠躁夜夜躁人人爽天天天天97| www.久久色.com| 国产日韩欧美在线观看| 亚洲美女福利视频网站| 亚洲福利视频专区| 久久国产精品亚洲| 欧美精品少妇videofree| 欧美日韩国产第一页| 亚洲在线免费观看| 日韩欧美精品中文字幕| 欧美一级高清免费播放| 精品国产老师黑色丝袜高跟鞋| 激情亚洲一区二区三区四区| 国产精品久久久久久av福利| 这里只有视频精品| 成人午夜一级二级三级| 久久久久女教师免费一区| 国产欧美一区二区白浆黑人| 国产+成+人+亚洲欧洲| 欧美小视频在线| 亚洲人成网站999久久久综合| 国产精品极品尤物在线观看| 亚洲日韩第一页| 亚洲成人久久久久| 人人爽久久涩噜噜噜网站| 久久久久久久久久久网站| 亚洲成人黄色在线观看| 欧美性视频精品| 亚洲欧美日本伦理| 亚洲成成品网站| 2025国产精品视频| 伊人激情综合网| 亚洲人成电影在线播放| 成年人精品视频| 国产精品福利小视频| 欧美与黑人午夜性猛交久久久| 国产精品成人在线| 伊人久久久久久久久久久久久| 久久久久久久久久久免费| 欧美日韩在线免费观看| 久操成人在线视频| 在线成人一区二区| 日韩精品在线电影| 日韩在线视频播放| 欧美精品福利在线| 亚洲天堂av网| 琪琪亚洲精品午夜在线| 97精品视频在线观看| 国产亚洲精品久久久久久牛牛| 国产精品嫩草影院久久久| 日韩中文字幕在线视频| 欧美电影在线观看高清| 欧美精品日韩www.p站| 91精品视频在线免费观看| 亚洲欧美日韩久久久久久| 伊人成人开心激情综合网| 久久久久久亚洲精品| 国产精品一区=区| 亚洲综合色激情五月| 国产精品免费久久久久久| 亚洲人av在线影院| 日韩国产精品视频| 97精品视频在线观看| 久久精品99久久香蕉国产色戒| 午夜精品理论片| 国产99视频在线观看| 曰本色欧美视频在线| 国产精品久久久精品| 亚洲欧美国产一本综合首页| 亚洲国产欧美一区二区三区久久| 久久精品国产视频| 亚洲综合大片69999| 欧美日韩国产专区| 亚洲无亚洲人成网站77777| 中文字幕日韩电影| 日韩电视剧在线观看免费网站| 日韩一二三在线视频播| 久久亚洲精品一区| 国产日韩在线播放| 黑人巨大精品欧美一区二区| 欧美精品情趣视频| 日本韩国欧美精品大片卡二| 国产精品福利无圣光在线一区| 欧美做受高潮1| 欧美日韩国产专区| 欧美激情女人20p| 欧美大片在线免费观看| 欧美性xxxxhd| 中文字幕亚洲欧美日韩2019| 日本国产精品视频| 国产精品伦子伦免费视频| 岛国精品视频在线播放| 欧美裸体男粗大视频在线观看| 国产精品视频网| 4444欧美成人kkkk| 国产在线拍偷自揄拍精品| 久久久久久久久电影| 精品国产自在精品国产浪潮| 国内精品在线一区| 欧美国产日韩一区二区| 亚洲在线视频福利| 日韩在线视频中文字幕| 亚洲午夜国产成人av电影男同| 成人在线视频网| 亚洲亚裔videos黑人hd| 久久视频免费观看| 精品亚洲国产视频| 国产精品第二页| 亚洲欧美中文日韩在线| 欧美特黄级在线| 97国产精品人人爽人人做| 精品免费在线观看| 17婷婷久久www| 亚洲精品日韩欧美| 主播福利视频一区| 一区二区亚洲欧洲国产日韩| 18一19gay欧美视频网站| 亚洲国产精品热久久| 日韩欧美a级成人黄色| 羞羞色国产精品| 亚洲精品电影网| 亚洲精品国偷自产在线99热| 成人中心免费视频| 97精品久久久中文字幕免费| 日韩美女写真福利在线观看| 在线播放国产一区二区三区| 欧美亚洲一区在线| 自拍偷拍亚洲欧美| 亚洲天堂男人天堂| 国产亚洲a∨片在线观看| 97av在线视频| 日韩av网站电影| 欧美日产国产成人免费图片| 一区国产精品视频| 奇米一区二区三区四区久久| 另类专区欧美制服同性| 欧美日本高清视频| 成人在线观看视频网站| 97久久精品在线| 久久影院资源网| 一区二区国产精品视频| 亚洲成人免费在线视频| 国产婷婷97碰碰久久人人蜜臀| 国产精品久久久久久久久借妻| 日韩电影中文字幕在线| 亚洲天堂成人在线| 国产精品中文字幕在线观看| 欧美色视频日本高清在线观看| 日本午夜精品理论片a级appf发布| 国产精品免费久久久久久| 欧美综合第一页|