ASP.NET数据库连接浅析

开发 后端
ASP.NET数据库连接是如何实现的呢?我们在这篇文章里就向大家介绍ASP.NET数据库连接的内幕。

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提供商及数据库的位置。然后我们打开这个数据库连接:

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

注意:连接字串必须是连续不换行的!

ASP.NET数据库连接之创建数据库命令

为了从数据库中指定检索的记录,我们将创建一个变量dbcomm作为一个新OleDbCommand类。OleDbCommand类是为了对数据库表发出SQL查询:

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

ASP.NET数据库连接之创建DataReader

OleDbDataReader类用来从数据源中读取记录流。DataReader是调用OleDbCommand对象的ExecuteReader方法来创建的:

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

ASP.NET数据库连接之绑定到Repeater控件

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

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

ASP.NET数据库连接之关闭数据库连接

在访问过数据库后,总是关闭不再需要的DataReader和数据库连接:

  1. dbread.Close()  
  2. dbconn.Close() 

ASP.NET数据库连接就向你介绍到这里了,希望你对ASP.NET数据库连接有了一定的了解。

【编辑推荐】

  1. Asp.net Ajax控件之AutoComplete控件几点浅析
  2. Windows Server 2003安装ASP.NET浅析
  3. ASP.NET运行环境搭建浅析
  4. ASP.NET学习之ASP.NET概述
  5. ASP.NET优点的十一方面浅析
责任编辑:仲衡 来源: blogbus
相关推荐

2009-07-29 09:12:31

ASP.NET数据库连

2009-07-31 09:57:47

ASP.NET数据库缓

2009-07-29 09:33:14

ASP.NET数据库连

2009-07-27 17:58:10

ASP.NET数据库编

2009-08-05 15:40:49

ASP.NET连接数据

2010-05-25 08:49:33

连接MySQL

2009-07-31 17:07:40

ASP.NET数据库连

2009-08-05 09:38:28

SQL Server数

2009-07-28 17:49:44

ASP.NET数据库连

2010-06-07 14:34:49

连接MySQL 数据库

2011-07-12 14:37:47

ASP.NET链接字符串

2011-08-01 23:34:34

ASP.NETOracle

2009-08-03 18:35:51

ASP.NET数据缓存

2009-08-05 15:50:13

ASP.NET优点

2009-07-31 12:43:59

ASP.NET MVC

2009-02-23 15:20:03

SQL Server数据库ASP.NET

2009-07-24 13:41:15

ASP.NET AJA

2009-08-05 18:36:12

ASP.NET Che

2009-08-10 13:32:15

ASP.NET TimASP.NET组件设计

2009-08-04 15:20:59

ASP.NET数据验证数据验证控件
点赞
收藏

51CTO技术栈公众号