❶ 請介紹一下ADO.NET框架下幾種資料庫訪問技術的優缺點。詳細一點
數據源控制項訪問資料庫:簡單快捷,但是真正的開發中不會去這樣用的,因為1是效率問題2是靈活性不足,這就跟ASP.NET裡面的其他控制項一樣,正的要做大應用是不會用這種東西的,因為擴展性不足,或者為了做到兼容性損失了效率。 使用.NET數據提供程序訪問資料庫:共有4種,SQL Server .NET Framework數據提供程序,OLEDB .NET Framework數據提供程序,ODBC .NET Framework數據提供程序,Oracle .NET Framework數據提供程序。看名字也該明白,針對不同的資料庫使用不同的數據提供程序,這是開發中最經常使用的方式,缺點是米有辦法應對多資料庫的情況,也就是說假如你的應用是面向多資料庫的,那麼有幾種資料庫,基本要寫幾套SQL。 用DATASet:恭喜你不用寫T-SQL了,但是你要學會它的語法,從此不用擔心多資料庫應用的問題。但是慘了,它為了兼容多種資料庫因此T-SQL寫的真的「很兼容」執行效率太低,同樣的一個表現結果,這個SQL嵌套了好幾次,效率灰常低。 LINQ to SQL:老實講,他就是為SQL SERVER而生的,你也不用寫T-SQL了,它的語法學學還是好處頗多,因因為你在LINQ TO OBJECT上也能見到這種語法的影子收益頗多,它的執行效率很快,但是不管怎麼講也沒有你直接用SQL Server .NET Framework數據提供程序,自己寫SQL快,可控製程度高,好處也是顯而易見就像用DATASET一樣,你不用再為了數據持久化問題寫一大堆ORM的東西了。 by the way,目前.NET中,ORM用的比較多的是Nhibernate,但是你如果就想用SQL SERVER還是用LINQ to SQL吧,好處顯而易見,在開發過程中對於資料庫的變更也是比較常見的,你的資料庫欄位不知道會出現在哪個類,哪個文件中,如果用了DATASET,或LINQ2SQL在編譯階段你就可以察覺到這種變更帶來的影響。
❷ 使用ADO.NET設計資料庫應用程序
認識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中進行資料庫的編程時 不管你使用上面提到的 個類中的哪一個類 這 個類在語法和用法上都大同小異 可以用一通百通來形容 怎樣學習ADO Net技術 筆者在學習和使用了ADO Net編程後 總結出下面 個必需的步驟 而且這 個步驟的順序是絕對不可以調換的 如果在以後的編程中發現 個步驟的順序換了或缺了一個步驟 那麼你的代碼肯定是錯的 使用對應類中的連接方法來連接資料庫 如使用SQLClient類 那麼就用SqlConnection 建立資料庫的鏈接 打開此鏈接 執行對應類中的命令方法來指定要執行的SQL語句 如使用SQLClient類就使用SqlCommand執行指定的SQL語句 下面舉出的兩個例子就是在 Net中使用ADO Net編程的代碼 由於SQL Server 在使用中比Oracle簡單 所以這里的資料庫使用Microsoft的SQL Server 原因是它在安裝後無須配置就可以直接使用 既然訪問的是SQL Server 那麼使用的類當然是SQLClient類 這兩個例子是 在資料庫中對數據進行添加 刪除 修改 利用ADO技術建立一個SQL Server 的資料庫 例 一啟動SQL Server 然後建立一個資料庫和一個表 並且在表中一定要有主鍵 隨便輸入一些數據 完成後保存此表 本文使用的表結構如下
表名 使用系統默認的表名table 然後打開VS Net建立一個新的工程 並從工具箱中將 SqlDataAdapter 控制項拖動到窗口底源鉛裂部 隨後 數據適配器配置向導 窗口會自動運行 按照向導提示完成操作(如圖)
需要注意的是 在出現的 生成SQL語句 窗口中要輸入標準的select語句 在本例中我們將從表Table 中返回id和d這兩列 所以應該輸入 SELECT id d FROM Table 語句 當然單擊 查詢生成器 按鈕系統也可以自動生成這條語句 當完成 數據適配器配置向導 後 你會在窗口的底部發現系統自動添加了 SqlConnection 接下來右擊 SqlDataAdapter 在快捷菜單中選擇 生成數據集 隨後可以看見 生成數據集 設置窗口 保持默認雹閉設置並單擊 確定 現在又會發現在設計窗口下多了一個 Dataset 到此為止 就差最後一個控鍵 SqlCommand 我們只要在工具欄中將它拖放過來並修改其屬性的 Connection 設置為 SqlConnection 並在 CommandText 屬性中利用 查詢生成器 為其生成select語句即可 到現在為止 我們就完成了ADO Net訪問資料庫的一大半了 網格是顯示數據的最好方法 為了讓數據顯示在網格中我們需要添加此控制項並且修改其屬性 添加的方法就是直接從工具箱中將它拖過來即可 不過它的屬性設置倒是很簡單 只要將 Datasource 設置為 Dataset table 即可 table是表示表的名字 最後添加兩行代碼即可完成對數據的添加 刪除 修改的操作 在Form _Load部分加入 Sql DataAdapter FillDataSet ″Table ″ 代碼 Private Sub Form _LoadByVal sender As System Object ByVal e As System EventArgs Handles MyBase LoadSqlDataAdapter FillDataSet ″Table ″ 將表中的數據添加到DataSet 中 End Sub添加一個Button 在Button _Click中加入 SqlDataAdapter UpdateDataSet ″Table ″ 代碼 Private Sub Button _ClickByVal sender As System Object ByVal e As System EventArgs Handles Button ClickSqlDataAdapter UpdateDataSet ″Table ″ 完成資料庫的添加 刪除 修改功能 End Sub程序說明 其中SqlDataAdapter Fil語句是把表中具體的數據添入DataSet 後 而SqlDataAdapter Update是表示當完成對數據的修改後使用Update進行資料庫的更新 使修改的數據生效 按 F 運行程序 你就可以看見表中的數據都顯示出來了 同時你可以隨意對它們進行修改 如要刪除數據 只要按下鍵盤上的 del 鍵即可 例一中使用控制項的簡單介紹
lishixin/Article/program/net/201311/13743
❸ Ado.net訪問資料庫的方法和步驟
不論從語法來看 還是從風格和設計目標來看 ADO NET都和ADO有顯著的不同 在ASP中通過ADO訪問資料庫 一般要通過以下四個步驟
創建一個到資料庫的鏈路 即ADO Connection
查詢一個數據集合 即執行SQL 產生一個Recordset
對數據集合進行需要的操作
關閉數據鏈路
在ADO NET里 這些步驟有很大的變化 ADO NET的最重要概念之一是DataSet DataSet是不依賴於資料庫的獨立數據集合 所謂獨立 就是 即使斷開數據鏈路 或者關閉資料庫 DataSet依然是可用的 如果你在ASP裡面使用過非連接記錄集合(Connectionless Recordset) 那麼DataSet就是這種技術的最徹底的替代品
有了DataSet 那麼 ADO NET訪問資料庫的步驟就相應地改變了
◆創建一個資料庫鏈路 ◆請求一個記錄集合 ◆把記錄集合暫存到DataSet ◆如果需要 返回第 步 (DataSet可以容納多個數據集合) ◆關閉資料庫鏈路 ◆在DataSet上做所需要的操作
lishixin/Article/program/net/201311/15216
❹ 請簡描述ADO.NET訪問資料庫的步驟
1.創建資料庫連接字元創
2.導入命名空間System.data.sqlcen...
3.jia創建SQLCONNECTION 對象 把鏈接字元創 放進去
4. 打開資料庫
5.聲明回SQLcommand對象 括弧答內放 執行命令的SQL語句 和connection對象
6command對象。方法執行相關命令