ASP.NET数据库连接之前,让我们先看看什么是ADO .NET?ADO .NET是 .NET Framework的一部分,它用来处理数据访问问题。用ADO .NET你可以与数据库一同工作。
ADO .NET是 .NET Framework的一部分
ADO .NET由一组处理数据访问的类组成
ADO .NET完全基于XML
ADO .NET与ADO不同,它不具有Recordset对象
ASP.NET数据库连接的建立
我们准备在我们的示例中使用Northwind这个数据库。
首先,导入命名空间“System.Data.OleDb”。我们需要这个命名空间来与Microsoft Access及其他数据库提供商协同工作。我们将在Page_Load子程序中与数据库建立连接。我们创建一个变量dbconn作为一个新的OleDbConnection类,它有一个连接字符串来指定OLE DB提供商及数据库的位置。然后我们打开这个数据库连接:
- ﹤%@ Import Namespace="System.Data.OleDb" %﹥
- ﹤script runat="server"﹥
- sub Page_Load
- dim dbconn
- dbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;
- data source=" & server.mappath("northwind.mdb"))
- dbconn.Open()
- end sub
- ﹤/script﹥
注意:连接字串必须是连续不换行的!
ASP.NET数据库连接之创建数据库命令
为了从数据库中指定检索的记录,我们将创建一个变量dbcomm作为一个新OleDbCommand类。OleDbCommand类是为了对数据库表发出SQL查询:
- ﹤%@ Import Namespace="System.Data.OleDb" %﹥
- ﹤script runat="server"﹥
- sub Page_Load
- dim dbconn,sql,dbcomm
- dbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;
- data source=" & server.mappath("northwind.mdb"))
- dbconn.Open()
- sql="SELECT * FROM customers"
- dbcomm=New OleDbCommand(sql,dbconn)
- end sub
- ﹤/script﹥
ASP.NET数据库连接之创建DataReader
OleDbDataReader类用来从数据源中读取记录流。DataReader是调用OleDbCommand对象的ExecuteReader方法来创建的:
- ﹤%@ Import Namespace="System.Data.OleDb" %﹥
- ﹤script runat="server"﹥
- sub Page_Load
- dim dbconn,sql,dbcomm,dbread
- dbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;
- data source=" & server.mappath("northwind.mdb"))
- dbconn.Open()
- sql="SELECT * FROM customers"
- dbcomm=New OleDbCommand(sql,dbconn)
- dbread=dbcomm.ExecuteReader()
- end sub
- ﹤/script﹥
ASP.NET数据库连接之绑定到Repeater控件
然后我们绑定DataReader到一个Repeater控件:
- ﹤%@ Import Namespace="System.Data.OleDb" %﹥
- ﹤script runat="server"﹥
- sub Page_Load
- dim dbconn,sql,dbcomm,dbread
- dbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;
- data source=" & server.mappath("northwind.mdb"))
- dbconn.Open()
- sql="SELECT * FROM customers"
- dbcomm=New OleDbCommand(sql,dbconn)
- dbread=dbcomm.ExecuteReader()
- customers.DataSource=dbread
- customers.DataBind()
- dbread.Close()
- dbconn.Close()
- end sub
- ﹤/script﹥
- ﹤html﹥
- ﹤body﹥
- ﹤form runat="server"﹥
- ﹤asp:Repeater id="customers" runat="server"﹥
- ﹤HeaderTemplate﹥
- ﹤table border="1" width="100%"﹥
- ﹤tr﹥
- ﹤th﹥Companyname﹤/th﹥
- ﹤th﹥Contactname﹤/th﹥
- ﹤th﹥Address﹤/th﹥
- ﹤th﹥City﹤/th﹥
- ﹤/tr﹥
- ﹤/HeaderTemplate﹥
- ﹤ItemTemplate﹥
- ﹤tr﹥
- ﹤td﹥﹤%#Container.DataItem("companyname")%﹥﹤/td﹥
- ﹤td﹥﹤%#Container.DataItem("contactname")%﹥﹤/td﹥
- ﹤td﹥﹤%#Container.DataItem("address")%﹥﹤/td﹥
- ﹤td﹥﹤%#Container.DataItem("city")%﹥﹤/td﹥
- ﹤/tr﹥
- ﹤/ItemTemplate﹥
- ﹤FooterTemplate﹥
- ﹤/table﹥
- ﹤/FooterTemplate﹥
- ﹤/asp:Repeater﹥
- ﹤/form﹥
- ﹤/body﹥
- ﹤/html﹥
ASP.NET数据库连接之关闭数据库连接
在访问过数据库后,总是关闭不再需要的DataReader和数据库连接:
- dbread.Close()
- dbconn.Close()
ASP.NET数据库连接就向你介绍到这里了,希望你对ASP.NET数据库连接有了一定的了解。
【编辑推荐】