ACCESS不可识别的数据库格式!
问题:我用ACCESS打开一个数据库文件时,出现“不可识别的数据库格式x:\xxx\az.mdb”原来是az.ASP的,是我把他改成*.mdb格式的。我用ACCEASS2...
问题:我用ACCESS打开一个数据库文件时,出现“不可识别的数据库格式x:\xxx\az.mdb”原来是az.ASP的,是我把他改成*.mdb格式的。我用ACCEASS 2000的和2003的都试过了,都打不开,但是在网页中又可以正常使用(留言)‘一个留言簿的’。网页的连接程序是这样的(不含引号)
“<!--#include file="NK_SqlIn.asp"-->
<%
set conn=server.createobject("adodb.connection")
connstr="Provider=Microsoft.jet.oledb.4.0;data source="&server.mappath("date/az.asp")
conn.open connstr
%>”
哪位高手帮帮我啊!我想打开,
并且请说详细一点,我才刚学了。
!!!我确定了他是一个数据库文件,用记事本打开是乱码,用Macromedia Dreamweaver MX 2004打开也是乱码,而且我做一个ACCESS 2000的文件再用记事本打开和那个打不开的文件是一样的乱,不过前面一段相同,帮忙啦!!!大家@ 展开
“<!--#include file="NK_SqlIn.asp"-->
<%
set conn=server.createobject("adodb.connection")
connstr="Provider=Microsoft.jet.oledb.4.0;data source="&server.mappath("date/az.asp")
conn.open connstr
%>”
哪位高手帮帮我啊!我想打开,
并且请说详细一点,我才刚学了。
!!!我确定了他是一个数据库文件,用记事本打开是乱码,用Macromedia Dreamweaver MX 2004打开也是乱码,而且我做一个ACCESS 2000的文件再用记事本打开和那个打不开的文件是一样的乱,不过前面一段相同,帮忙啦!!!大家@ 展开
展开全部
在Access07之前的数据库后缀名均为*.mdb 而连接字符串写成Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\myFolder\*.mdb ;Persist Security Info=False;
但是Access07和Access10将后缀名改为了*.accdb。
而通过上述连接的话就会报出"不可识别的数据库格式"异常。
需要注意的是Microsoft.Jet.OLEDB.4.0的Oledb的连接方式是比较老的连接方式,而07以后的Oledb连接方式将改成Microsoft.ACE.OLEDB.12.0。
改后的连接变成了Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\myFolder\*.accdb;Persist Security Info=False;
小窍门:
在asp.net中经常把连接字符串写在web.config中。但是access的连接字符串是需要数据库的绝对位置。即 盘符:/文件夹/文件 这样就导致经常把文件拷贝后需要改路径的问题。其实完全可以通过程序来获得数据库文件的绝对路径。
具体如下:
web.config中只写数据库文件名 (一般会把数据库文件放在App_Data文件夹下,因为有一定的安全性)
<appSettings>
<add key="ConnString" value="App_Data\ManageDB.accdb"/>
</appSettings>
然后在DBHelper类获得字符串的写上如下方法:
public static string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" + AppDomain.CurrentDomain.BaseDirectory + ConfigurationSettings.AppSettings["ConnString"];
通过AppDomain.CurrentDomain.BaseDirectory来获得此数据库的绝对路径.
但是Access07和Access10将后缀名改为了*.accdb。
而通过上述连接的话就会报出"不可识别的数据库格式"异常。
需要注意的是Microsoft.Jet.OLEDB.4.0的Oledb的连接方式是比较老的连接方式,而07以后的Oledb连接方式将改成Microsoft.ACE.OLEDB.12.0。
改后的连接变成了Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\myFolder\*.accdb;Persist Security Info=False;
小窍门:
在asp.net中经常把连接字符串写在web.config中。但是access的连接字符串是需要数据库的绝对位置。即 盘符:/文件夹/文件 这样就导致经常把文件拷贝后需要改路径的问题。其实完全可以通过程序来获得数据库文件的绝对路径。
具体如下:
web.config中只写数据库文件名 (一般会把数据库文件放在App_Data文件夹下,因为有一定的安全性)
<appSettings>
<add key="ConnString" value="App_Data\ManageDB.accdb"/>
</appSettings>
然后在DBHelper类获得字符串的写上如下方法:
public static string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" + AppDomain.CurrentDomain.BaseDirectory + ConfigurationSettings.AppSettings["ConnString"];
通过AppDomain.CurrentDomain.BaseDirectory来获得此数据库的绝对路径.
今至电子科技有限公司
2024-08-23 广告
2024-08-23 广告
上海今至电子科技有限公司,是一家从事运维服务、系统集成和网络工程的专业公司。业务涵盖IT解决方案、网络工程、应用软件开发、系统集成、服务器虚拟化、桌面虚拟化、高性能运算、负载均衡、数据容灾备份、服务外包、IT运维等。我们的理念:诚信为本,服...
点击进入详情页
本回答由今至电子科技有限公司提供
展开全部
是不是从哪个网站下的?想修改库里的内容?呵呵!你这样做,一、仍然把它改成mdb格式,二、不要打开他,三、用SQL SERVER把这个MDB库导进去,你就可以看到里面的内容了!四、再把SQL的库导出来,导成MDB,改成她原来的名字,放心用吧!改了多少次了!
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
asp不是用数据库打开的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |