ASP.NET连接Access数据库

时间:2022-02-12 13:39:37

 今天刚学习了如何用ASP.NET连接ACCESS数据库并在DataGrid控件里显示出来。不看不知道,一看才发现有代码分离型的和代码与HTML放在一个页面型的。下面分别介绍一下这些最简单的连接数据库的方法:

 

 

一、不将代码放在单独的页面中

1.添加新项-WEB窗体-将代码放在单独的页面中(不打勾)

 

 

ASP.NET连接Access数据库

 

  1. <%@ Page Language="VB" ContentType="text/html" ResponseEncoding="utf-8" %>
  2. <%@ Import Namespace="System.Data" %>
  3. <%@ Import NameSpace="System.Data.OleDb" %>
  4. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  5. <html xmlns="http://www.w3.org/1999/xhtml">
  6. <head>
  7. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  8. <title>Test - Access数据库连接</title>
  9. <script laguage="VB" runat="server">
  10.     Dim myConnection As OleDbConnection
  11.     Dim myCommand As OleDbCommand
  12.     Sub page_load(ByVal Sender As Object, ByVal E As EventArgs)
  13.         Dim dbname As String
  14.         dbname = Server.MapPath("App_Data/chat.mdb")
  15.         myConnection = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;DATA Source=" & dbname)
  16.         myConnection.Open()
  17.         myCommand = New OleDbCommand("Select ID,UserAcc,Password,NickName From [User] Order By ID Desc", myConnection)
  18.         datagrid.DataSource = myCommand.ExecuteReader()
  19.         datagrid.DataBind()
  20.         myConnection.Close()
  21.     End Sub
  22. </script>
  23. </head>
  24. <body>
  25. <ASP:DataGrid id="datagrid" runat="server" 
  26. Width="100%" 
  27. BackColor="white" 
  28. BorderColor="black" 
  29. ShowFooter="false" 
  30. CellPadding="3" 
  31. CellSpacing="0" 
  32. Font-Name="Courier New, Courier, monospace" 
  33. Font-Size="12px" 
  34. HeaderStyle-BackColor="#aaaadd" 
  35. MaintainState="false" />
  36. </body>
  37. </html>

二、将代码放在单独的页面中

 

1.添加新项-WEB窗体-将代码放在单独的页面中(打勾)

 

ASP.NET连接Access数据库

 

2.aspx:

  1. <%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml" >
  4. <head runat="server">
  5.     <title>无标题页</title>
  6. </head>
  7. <body>
  8.     <form id="form1" runat="server">
  9.     <div>
  10.     
  11.     
  12. <ASP:DataGrid id="datagrid" runat="server" 
  13. Width="100%" 
  14. BackColor="white" 
  15. BorderColor="black" 
  16. ShowFooter="false" 
  17. CellPadding="3" 
  18. CellSpacing="0" 
  19. Font-Name="Courier New, Courier, monospace" 
  20. Font-Size="12px" 
  21. HeaderStyle-BackColor="#aaaadd" 
  22. MaintainState="false" />    
  23.     
  24.     </div>
  25.     </form>
  26. </body>
  27. </html>

2.aspx.vb

  1. Imports System.Data
  2. Imports System.Data.OleDb
  3. Partial Class _Default
  4.     Inherits System.Web.UI.Page
  5.     Dim myConnection As OleDbConnection
  6.     Dim myCommand As OleDbCommand
  7.     Protected Sub Page_Load1(ByVal sender As ObjectByVal e As System.EventArgs) Handles Me.Load
  8.         Dim dbname As String
  9.         dbname = Server.MapPath("App_Data/chat.mdb")
  10.         myConnection = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;DATA Source=" & dbname)
  11.         myConnection.Open()
  12.         myCommand = New OleDbCommand("Select ID,UserAcc,Password,NickName From [User] Order By ID Desc", myConnection)
  13.         datagrid.DataSource = myCommand.ExecuteReader()
  14.         datagrid.DataBind()
  15.         myConnection.Close()
  16.     End Sub
  17. End Class

两个查询的结果都是一样的,如下图所示:

 

 

ASP.NET连接Access数据库