用ado连接access口令加密的数据库.(50分)

  • 主题发起人 主题发起人 zgzjhy
  • 开始时间 开始时间
Z

zgzjhy

Unregistered / Unconfirmed
GUEST, unregistred user!
用ado连接access口令加密的数据库.
如何连接和打开.
请告诉我具体的方法和源码.
多谢!
 
Access中设置了密码之后,要在ADO连接的ALL页面中的PASSWORD部分输入其密码,
而CONNECTION部分不必理会。
 
hunterteam的方法试过不行,
我的源代码是:
const mystr='provider=%s;data provider=%s;data source=%s';
getdir(0,mainpath);
schadoconnection.connected:=false;
schadoconnection.ConnectionString :=format(mystr,[myprovider,mydataprovider,mainpath+'./systemdbf/school.tea']);
schadoconnection.connected:=true;
passADOTable.TableName :='logintable';
passadotable.Open ;
请再帮助!
 
'Provider=Microsoft.Jet.OLEDB.4.0;'
+ 'password="";' //这是用户工作组(*.mdw)密码
+ 'User ID=Admin;' //这是用户工作组(*.mdw)用户名
+ 'Data Source=c:/db.mdb;' +'Persist Security Info=True;'
+ 'Mode=Share Deny None;Extended Properties="";'
+ 'Jet OLEDB:System database="";' //这是用户工作组文件
+ 'Jet OLEDB:Registry Path="";'
+ 'Jet OLEDB:Database Password=feng;' //这里才是数据库密码
+ '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="";'
+ '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';
 
hunterteam 说的对
 
是ADOConnection控件中的connectionstring属性中设置吗?
我设置过,可不行.提示是密码错误.
我可以保证密码是正确的.
 
有两种密码,看看你设置的哪一种,是不是对应。
不对应,是连不上的。
 
是ADOConnection控件中的connectionstring属性中设置,打开后选ALL选项卡,在
Jet OLEDB:Database Password中双击并加入密码。
OK
 
请帮忙在下面我的源代码中加入:
我的源代码是:
const mystr='provider=%s;data provider=%s;data source=%s';
getdir(0,mainpath);
schadoconnection.connected:=false;
schadoconnection.ConnectionString :=format(mystr,[myprovider,mydataprovider,mainpath+'./systemdbf/school.tea']);
schadoconnection.connected:=true;
passADOTable.TableName :='logintable';
passadotable.Open

万分感激.
 
很棒的东西哦!
 
schadoconnection.connected:=false;
schadoconnection.ConnectionString :=
'Provider=Microsoft.Jet.OLEDB.4.0;'
+ 'password="";' //这是用户工作组(*.mdw)密码,没有可以不要
+ 'User ID=Admin;' //这是用户工作组(*.mdw)用户名,没有可以不要
+ 'Data Source=c:/db.mdb;'
+ 'Persist Security Info=True;'
+ 'Mode=Share Deny None;Extended Properties="";'
+ 'Jet OLEDB:System database="";' //这是用户工作组文件,没有可以不要
+ 'Jet OLEDB:Registry Path="";'
+ 'Jet OLEDB:Database Password=12345;' //这里才是数据库密码,没有可以不要
+ '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="";'
+ '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';

schadoconnection.connected:=true;
passADOTable.TableName :='logintable';
passadotable.Open

象你所定义的几个参数可以这样:
+ 'Data Source=' + mainpath + ';' ;
 
感谢阿高,还有个小问题,
我所连接的数据库中有二个表,我用以下代码:
schADOTable.TableName :='school';
schadotable.Open ;
连接另一个表,结果出错:
missing operator or semicolon
怎么回事?
 
感谢阿高,还有个小问题,
我所连接的数据库中有二个表,我用以下代码:
schADOTable.TableName :='schooltable';
schadotable.Open ;
连接另一个表,结果出错:
missing connestion or connectionstring
怎么回事?
 
设置AdoQuery的Connection或者ConnectionString
 
schADOTable.Connection:='schadoconnection';
 
多人接受答案了。
 
后退
顶部