ODBC
Standard Security:
"Driver={Microsoft Access Driver (*.mdb)};Dbq=\somepath\mydb.mdb;Uid=Admin;Pwd=asdasd;"
Workgroup:
"Driver={Microsoft Access Driver (*.mdb)};Dbq=\somepath\mydb.mdb;SystemDB=\somepath\mydb.mdw;","admin", ""
OLEDB, OleDbConnection (.NET)
Standard security:
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\somepath\mydb.mdb;User Id=admin;Password=asdasd;"
Workgroup (system database):
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\somepath\mydb.mdb;Jet OLEDB:System Database=system.mdw;","admin", ""
With password:
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\somepath\mydb.mdb;Jet OLEDB:Database Password=MyDbPassword;","admin", ""
" />
1.在web.config中只保存相对目录
2.使用一个工具类返回一个连接字符串,在这个类中拼写好连接即可(Server.MapPath(System.Configurations.....))。
<appSettings>
<add key="DataSource" value="data\xboard.mdb" />
<add key="Provider" value="Provider = Microsoft.Jet.OLEDB.4.0" />
</appSettings>然后你要定义一个公共函数来提取
数据库的相对地址是
Public Function getconnstr() As String
StringBuilder strResult = new StringBuilder(ConfigurationSettings.AppSettings["Provider"]);
strResult.Append("; ");
strResult.Append("Data Source = ");
strResult.Append(HttpContext.Current.Server.MapPath("."));
strResult.Append("\\");
strResult.Append(ConfigurationSettings.AppSettings["DataSource"]);
return strResult.ToString();
End Function这样子灵活性就更高了
imports system.text
我上面是VB和C#混和了:(
Dim strResult As StringBuilder = New StringBuilder(ConfigurationSettings.AppSettings("Provider"))
strResult.Append("; ")
strResult.Append("Data Source = ")
strResult.Append(HttpContext.Current.Server.MapPath("."))
strResult.Append("\\")
strResult.Append(ConfigurationSettings.AppSettings("DataSource"))
Return strResult.ToString()
具体做法是:
<add key="OleDbConnectString_Access" value="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=xxxxxx.mdb;Persist Security Info=False" />
如你的应用工程名为MYAPP
Server.MapPath(/MYAPP)+System.Configurations....