aardio 官方社区

 找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 7430|回复: 2

打开带密码的ACCESS数据库

[复制链接]

15

主题

35

回帖

320

积分

二级会员

积分
320
发表于 2017-10-26 22:44:29 | 显示全部楼层 |阅读模式
求教如何打开带密码的Access数据库,谢谢

var db = access("D:/DB/Db.mdb","123456");
db.close();

上边的代码,会在db.close()这一行提示错误。。。。

166

主题

2154

回帖

1万

积分

管理员

积分
13056
发表于 2017-10-27 15:54:58 | 显示全部楼层
数据库连接串请参考:
https://www.connectionstrings.com/access-97/

import access;
import console;

//创建一个用于测试的加密数据库
if(!io.exist("/testPwd.mdb")){
   
var db = access("/testPwd.mdb",{
        mode=
"Share Deny Read|Share Deny Write"; //修改密码必须以独占模式打开
        })
   
   
//修改密码
    db.exec("ALTER DATABASE PASSWORD %s %s"
            ,
"123456" //新密码
            ,"``" //旧密码,没有写``
        );
    db.close()
}

//这次尝试以密码打开数据库
var db,err =  access("/testPwd.mdb",{
    [
"Jet OLEDB:Database Password"] = "123456"; //这里写密码
});

//如果db为空,显示错误信息 err
assert(db,err)

console.log(
"数据库连接成功:",db.connectionString)

//关闭数据库连接
db.close();
console.pause();


1

主题

32

回帖

258

积分

二级会员

积分
258
发表于 2017-10-27 17:36:50 | 显示全部楼层
我这样是可以打开数据库的
  1. //访问有密码ACCESS数据库

  2. import access;
  3. import console;

  4. //访问有密码ACCESS数据库
  5. var db = access("PROVIDER=MSDataShape;Data PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=%s;Jet OLEDB:Database Password='%s';",
  6.         "C:\Users\Administrator\Desktop\test.mdb","123456" );

  7. //将查询结果转换为普通数组
  8. var tab = db.getTable("SELECT * FROM homepage2");
  9. console.dump(tab);

  10. db.close();

  11. console.pause();
复制代码
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

手机版|未经许可严禁引用或转载本站文章|aardio.com|aardio 官方社区 ( 皖ICP备09012014号 )

GMT+8, 2025-2-13 16:25 , Processed in 0.055000 second(s), 24 queries .

Powered by Discuz! X3.5

Copyright © 2001-2024 Tencent Cloud.

快速回复 返回顶部 返回列表