课程表

WebPages 教程

WebPages 参考手册

ASP.net Razor

ASP.net MVC

WebForms 教程

WebForms 参考手册

工具箱
速查手册

WebForms 数据库连接

当前位置:免费教程 » 程序设计 » ASP.net

ADO.NET 同样是 .NET 框架的组成部分。

ADO.NET 的职能是处理数据访问。通过 ADO.NET,您就可以操作数据库了。

什么是 ADO.NET?

  • ADO.NET 是 .NET 框架的组成部分
  • ADO.NET 由一系列用于操作数据访问的类组成
  • ADO.NET 完全基于 XML
  • ADO.NET 没有 Recordset 对象,这一点与 ADO 不同

创建数据库连接

我们打算使用曾经使用过的 Northwind 数据库。

首先,导入命名空间 "System.Data.OleDb"。我们需要该命名空间,以便可以操作 Microsoft Access 以及其他的 OLE DB 数据库提供者。我们将在 Page_Load 子例程中创建对此数据库的连接。我们创建了一个 dbconn 变量,并把新的 OleDbConnection 类赋值给这个变量,这个 OleDbConnection 类带有一个连接字符串,可以指示 OLE DB 以及数据库的位置。然后我们打开此数据库连接:

  1. <%@ Import Namespace="System.Data.OleDb" %>
  2.  
  3. <script runat="server">
  4. sub Page_Load
  5. dim dbconn
  6. dbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;
  7. data source=" & server.mappath("northwind.mdb"))
  8. dbconn.Open()
  9. end sub
  10. </script>

注释:这个连接字符串必须是没有折行的连续字符串!

创建数据库命令

为了指定需从数据库取回的记录,我们将创建一个 dbcomm 变量,并为其赋值一个新的 OleDbCommand。这个 OleDbCommand 类用于发出针对数据库表的 SQL 查询:

  1. <%@ Import Namespace="System.Data.OleDb" %>
  2.  
  3. <script runat="server">
  4. sub Page_Load
  5. dim dbconn,sql,dbcomm
  6. dbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;
  7. data source=" & server.mappath("northwind.mdb"))
  8. dbconn.Open()
  9. sql="SELECT * FROM customers"
  10. dbcomm=New OleDbCommand(sql,dbconn)
  11. end sub
  12. </script>

创建 DataReader

OleDbDataReader 类用于从数据源中读取记录流。通过调用 OleDbCommand 对象的 ExecuteReader 方法,就可以创建 DataReader:

  1. <%@ Import Namespace="System.Data.OleDb" %>
  2.  
  3. <script runat="server">
  4. sub Page_Load
  5. dim dbconn,sql,dbcomm,dbread
  6. dbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;
  7. data source=" & server.mappath("northwind.mdb"))
  8. dbconn.Open()
  9. sql="SELECT * FROM customers"
  10. dbcomm=New OleDbCommand(sql,dbconn)
  11. dbread=dbcomm.ExecuteReader()
  12. end sub
  13. </script>

绑定到 Repeater 控件

然后,我们把这个 DataReader 绑定到一个 Repeater 控件:

  1. <%@ Import Namespace="System.Data.OleDb" %>
  2.  
  3. <script runat="server">
  4. sub Page_Load
  5. dim dbconn,sql,dbcomm,dbread
  6. dbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;
  7. data source=" & server.mappath("northwind.mdb"))
  8. dbconn.Open()
  9. sql="SELECT * FROM customers"
  10. dbcomm=New OleDbCommand(sql,dbconn)
  11. dbread=dbcomm.ExecuteReader()
  12. customers.DataSource=dbread
  13. customers.DataBind()
  14. dbread.Close()
  15. dbconn.Close()
  16. end sub
  17. </script>
  18.  
  19. <html>
  20. <body>
  21.  
  22. <form runat="server">
  23. <asp:Repeater id="customers" runat="server">
  24.  
  25. <HeaderTemplate>
  26. <table border="1" width="100%">
  27. <tr>
  28. <th>Companyname</th>
  29. <th>Contactname</th>
  30. <th>Address</th>
  31. <th>City</th>
  32. </tr>
  33. </HeaderTemplate>
  34.  
  35. <ItemTemplate>
  36. <tr>
  37. <td><%#Container.DataItem("companyname")%></td>
  38. <td><%#Container.DataItem("contactname")%></td>
  39. <td><%#Container.DataItem("address")%></td>
  40. <td><%#Container.DataItem("city")%></td>
  41. </tr>
  42. </ItemTemplate>
  43.  
  44. <FooterTemplate>
  45. </table>
  46. </FooterTemplate>
  47.  
  48. </asp:Repeater>
  49. </form>
  50.  
  51. </body>
  52. </html>

显示这个例子

关闭数据库连接

在不在需要访问数据库后,请记得始终将 DataReader 和数据库连接关闭:

  1. dbread.Close()
  2. dbconn.Close()
转载本站内容时,请务必注明来自W3xue,违者必究。
 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号