问题:请问如何使用Delphi打开.AIS的数据库文件,急!! ( 积分:200, 回复:3, 阅读:68 )
分类:数据库-文件型 ( 版主:hbezwwl, 吴剑明 )
来自:harrylifeng, 时间:2002-2-4 10:32:00, ID:905232 [显示:小字体 | 大字体]
只能使用ADO的方式。
我用ODBC试了一下,用Access的数据库引擎。提示错误:
“You do not have the necessary permissions to use the '****.AIS' object.
Have your system administrator or the person who created this object
establish the appropriate permissions for you”
用户名和密码都是正确的。我用Access2000可以打开。
来自:shangshang, 时间:2002-2-4 22:10:00, ID:906933 | 编辑
我做过金蝶的一个配套, 其中.AIS就是他们的帐套文件,但全部有权限限制,是ACCESS的用户与组
的权限限制, 在用ADO访问时一定要在连接字符串里加上这些信息, 方法是在创建连接字符串时
在连接信息里加上ACCESS用户帐号和口令就行了.不知道这样能不能解决你的问题呢, 如果你觉的有可能的话, 还可以联系我
[email protected],
希望你早日高定,这样,我就可以挣些分了.^_^
来自:shangshang, 时间:2002-2-4 22:18:00, ID:906947 | 编辑
哦,漏了一点,主要是时间久了,没记清,呵呵..你应该还有个.MDA文件啊,是ACCESS SYSTEM DATABASE 的文件,扩展名和ACCESS版本有关,
不过作用一样,就是管理打开权限的.呵呵 , 这个少不得的.
来自:harrylifeng, 时间:2002-2-5 8:47:00, ID:907321
呵呵,我现在已经差不多搞掂了。多谢。
补充一点,我现在使用的Provider是Jet4.0,首先选择数据库,
然后设定其SYSTEM DATABASE为那个.MDA文件。再输入用户名和密码就可以
连接成功了。
感谢你的回复,接受答案了。
得分大富翁:shangshang
分类:数据库-文件型 ( 版主:hbezwwl, 吴剑明 )
来自:harrylifeng, 时间:2002-2-4 10:32:00, ID:905232 [显示:小字体 | 大字体]
只能使用ADO的方式。
我用ODBC试了一下,用Access的数据库引擎。提示错误:
“You do not have the necessary permissions to use the '****.AIS' object.
Have your system administrator or the person who created this object
establish the appropriate permissions for you”
用户名和密码都是正确的。我用Access2000可以打开。
来自:shangshang, 时间:2002-2-4 22:10:00, ID:906933 | 编辑
我做过金蝶的一个配套, 其中.AIS就是他们的帐套文件,但全部有权限限制,是ACCESS的用户与组
的权限限制, 在用ADO访问时一定要在连接字符串里加上这些信息, 方法是在创建连接字符串时
在连接信息里加上ACCESS用户帐号和口令就行了.不知道这样能不能解决你的问题呢, 如果你觉的有可能的话, 还可以联系我
[email protected],
希望你早日高定,这样,我就可以挣些分了.^_^
来自:shangshang, 时间:2002-2-4 22:18:00, ID:906947 | 编辑
哦,漏了一点,主要是时间久了,没记清,呵呵..你应该还有个.MDA文件啊,是ACCESS SYSTEM DATABASE 的文件,扩展名和ACCESS版本有关,
不过作用一样,就是管理打开权限的.呵呵 , 这个少不得的.
来自:harrylifeng, 时间:2002-2-5 8:47:00, ID:907321
呵呵,我现在已经差不多搞掂了。多谢。
补充一点,我现在使用的Provider是Jet4.0,首先选择数据库,
然后设定其SYSTEM DATABASE为那个.MDA文件。再输入用户名和密码就可以
连接成功了。
感谢你的回复,接受答案了。
得分大富翁:shangshang
解决方案 »
- 求助,如果有Edit1...Edit5这的5个Edit,怎样用数组形式来存放
- 如何通過窗口句柄隱藏窗口!
- 编译时出现‘symbol 'TRzToolbarButton' is deprecated’的错误提示,是什么意思 ?
- 请怎么做一个像QQ图标的效果?
- 有哪位大哥做过卸载程序的来指教一下UP有分
- 问题??急!急!文件保护的问题,如何保护一个文件不让别人Copy和Delete?
- 通过Delphi提供的TServerSocket和TClientSocket能够得到客户端的Mac地址吗?
- ToolButton的问题?
- 制作安装程序后,为何在WIN9X里的开始-程序菜单里没有程序菜单?
- 为何我下的例子在设计时不能改变窗体的大小,如何解决?
- 主从表中的DBGrid数据不显示问题
- 怎样在dbgrid中编辑多条记录但不直接存进表里
分类:数据库-文件型 ( 版主:hbezwwl, 吴剑明 )
来自:jonson, 时间:2002-7-16 11:39:00, ID:1204932 [显示:小字体 | 大字体]
各位大吓:
我用ADO的Microsoft Jet 4 Ole db Provider连接Access的mdb数据库时没有问题,
但当我用Access设置了mdb数据库密码后,再用ADO连接,系统提示:‘测试连接失败,
因为初始化提供程序时发生错误。无法启动应用程序。工作组信息文件丢失,
或是已被其它用户以独占方式打开’
请问各位怎样解决。
感谢万分
来自:shangshang, 时间:2002-7-16 11:53:00, ID:1204954 | 编辑
给你一个文章吧。ADO控件组一般都用来连接ACCESS数据库的。在数据库没有设密码的时候,用CONNECTSTRING就可以实现连接,但是如果有密码的,这时这个属性就不能用了,无论你怎么设置都无法连接!
该怎么解决呢?我问了一下朋友,对有密码的ACCESS数据库如果用ADO只能动态设定,而且这里面的参数很复杂,其实并不是设的东西负责而是这个语句很繁琐!
下面我把代码贴出,以供参考!
Const
{TADOConnection 连接数据库的参数}
ADOLinkString ='Provider=Microsoft.Jet.OLEDB.4.0;'
+ 'Password=%s;' //用户工作组(*.mdw)密码
+ 'User ID=%s;' //用户工作组(*.mdw)用户名Admin
+ 'Data Source=%s;' //数据库文件(*.mdb)位置
+ 'Persist Security Info=True;'
+ 'Mode=ReadWrite;' // 数据库打开方式
+ 'Extended Properties=""' //默认值为空
+ 'Jet OLEDB:System Database=""' //用户工作组文件
+ 'Jet OLEDB:Registry Path=""' //注册路径
+ 'Jet OLEDB:Database Password=%s;' //数据库密码
+ 'Jet OLEDB:Engine Type=1;'
+ 'Jet OLEDB:Database Locking Mode=1;'
+ 'Jet OLEDB:Global Partial Bulk Ops=2;'
+ 'Jet OLEDB:Global Bulk Transactions=1;'
+ 'Jet OLEDB:New Database Password=%s;' //?密码
+ 'Jet OLEDB:Create System Database=False;'
+ 'Jet OLEDB:Encrypt Database=False;'
+ 'Jet OLEDB:Don''t Copy Locale on Compact=False;'
+ 'Jet OLEDB:Compact Without Replica Repair=False;'
+ 'Jet OLEDB:SFP=False';var mainDBPath,
mdwPassword,
mdwUserID,
mdbDataSource,
mdbUserID,
mdbPassword,
mdbNewPassword:string;
begin
mainDBPath :=ExtractFilePath(ParamStr(0));
mdwPassword :='';
mdwUserID :='Admin';
mdbDataSource :=mainDBPath+'data\hongyu.mdb';
mdbUserID :='Admin';
mdbPassword :='123456';
mdbNewPassword :=''; //---这样设置完后再连接到控件的属性上就可以了!---//
with ADOQry_User do
begin
{以上是给变量赋值}
Active :=False;
ConnectionString :=Format(ADOLinkString, [mdwPassword,dwUserId, mdbDataSource, mdbPassword,
dbNewPassword]);{初始连接参数}
end;
end;其实把连接对话筐里的all页里的'system database'设为你的工作组信息文件就该够了。
来自:shangshang, 时间:2002-7-16 11:54:00, ID:1204957 | 编辑
刚才的最后一句就该解决你的问题了。
来自:youcan, 时间:2002-7-16 12:28:00, ID:1204974
给你一个最简单的
你的密码应该写在最后一页的 jet oledb database password 中。也就是“所有”那一页
“连接”那一页的“空白密码”还是选着
来自:twos, 时间:2002-7-16 12:48:00, ID:1205034
设置数据库密码,就可以了
来自:zryzry, 时间:2002-7-16 12:57:00, ID:1205048
不要设数据库密码,
设一个管理员密码
来自:hnlygtjj, 时间:2002-7-16 13:53:00, ID:1205116
我试过你们所说的所有的方法,没有一个可行的。
来自:jonson, 时间:2002-7-16 14:49:00, ID:1205202
youcan的方法很好
来自:dreamliu2001, 时间:2002-7-16 15:01:00, ID:1205238
试试这个:
直接把你的Ado控件的ConnectionString设为:
Provider=Microsoft.Jet.OleDB.4.0;
Data Source=E:\db.mdb;//这里是你的数据库文件的路径及文件名
Jet OLEDB:Engine Type=5;
Locale Identifier=0x0804;
Jet OLEDB:Database Password=YourPassWord//这里是你的密码
得分大富翁:shangshang-10,youcan-40,