如果你遇到了这个问题,可以检查以下几点:
- 检查数据库连接方式是否正确。如果连接方式过时或使用 ODBC 数据源连接数据库,可能会导致连接不上或无法读取数据。
- 检查数据库连接字符串。如果连接字符串中包含以下代码,则是旧版本的驱动连接方式: connstr=”driver={Microsaoft Access Driver (*.mdb)};dbq=” & Server.MapPath(“”&db&””)
你可以将其改为以下代码: connstr=”Provider=Microsoft.Jet.OLEDB.4.0;Data Source=” & Server.MapPath(“”&db&””)
如果修改后网站能够正常访问,那么就证明是连接方式的问题了。
- 如果连接字符串中包含 dns=***,则是以 ODBC 数据源连接数据库。虚拟主机的 Access 无法使用这种连接方式,因为需要在服务器上配置数据源。此时,你需要将连接方式改为驱动连接方式。完整代码如下: ‘你的数据库文件路径及文件名 db=”../database/mydb.mdb” Set conn = Server.CreateObject(“ADODB.Connection”) connstr=”Provider=Microsoft.Jet.OLEDB.4.0;Data Source=” & Server.MapPath(“”&db&””) conn.Open connstr
- 如果 Access 数据库有密码保护,连接字符串也需要做出修改。具体代码如下: connstr=”Provider=Microsoft.Jet.OLEDB.4.0;Data Source=” & Server.MapPath(“”&db&””) &”;Jet OLEDB:Database Password=123;”
希望这些方法能够解决你遇到的问题,让网站能够正常读取 Access 数据库。