必须为 OleDbConnection 连接字符串指定提供程序名称。下列连接字符串使用 Jet 提供程序连接到 Microsoft Access 数据库。
请注意,如果数据库未受到保护(默认值),可选择 UserID 和 Password 关键字。
Provider=Microsoft.Jet.OLEDB.4.0; Data Source=d:\Northwind.mdb;User ID=Admin;Password=;
如果使用用户级安全保护 Jet 数据库,则必须提供工作组信息文件 (.mdw) 的位置。工作组信息文件用于验证连接字符串中显示的凭据。
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\Northwind.mdb;Jet OLEDB:System Database=
d:\NorthwindSystem.mdw;User ID=*****;Password=*****;
在 ADO.NET 2.0 中,随着 |DataDirectory|(包含在管道符号中)替代字符串的引入,可指示数据文件的相对路径,从而允许开发人员创建
基于数据库源的相对路径(而无需指定完整路径)的连接字符串。它还可以用于 System.Data.OleDb 和 System.Data.Odbc .NET 数据提
供程序。如果将 Access .mdb 文件存储在网站的 App_Data 目录中(推荐使用以增强安全性),则可以使用语法 |DataDirectory|path 来
指定位置。|DataDirectory| 字符串在运行时解析为网站的 App_Data 文件夹。下面的 OleDbConnection 字符串示例演示连接到应用程序
app_data 文件夹中的 Northwind.mdb 所需的语法。系统数据库 (System.mdw) 也存储在该位置。
"Provider=Microsoft.Jet.OLEDB.4.0;
Data Source=|DataDirectory|\Northwind.mdb;
Jet OLEDB:System Database=|DataDirectory|\System.mdw;"
< add name = " Access2003 " connectionString = " Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\Image.mdb;Jet OLEDB:Database Password=jinzhexian "
providerName = " System.Data.OleDb " />
< add name = " Access2007 " connectionString = " Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\User.accdb;Jet OLEDB:Database Password=jinzhexian "
providerName = " System.Data.OleDb " />
</ connectionStrings >
安全说明: |
---|
如果 Access/Jet 数据库未受到保护,则不需要在连接字符串中指定系统数据库的位置。默认情况下安全性 |
将 Northwind.mdb 放在 ASP.NET 程序的子文件夹 App_Data 里。
Access 2003 : Provider = "Microsoft.Jet.OLEDB.4.0";
Access 2007 : Provider = "Microsoft.ACE.OLEDB.12.0";
"Jet OLEDB:Database Password" = "mima";