制作了一软件,使用ADO操作ACESS数据库,刻在光盘上运行,,结果数据库文件的属性成了只读属性,软件无法打开
使用如下代码:
s:='Provider=Microsoft.Jet.OLEDB.4.0;Password="";Data Source='+path+';Mode=Share Deny Read|Share Deny Write;Persist Security Info=True';
 ADOConnection1.ConnectionString:=s;
 ADOConnection1.Open;
 adoquery1.Open;要是把权限改成"read"属性
则,软件要在光盘的当前文件夹下生成临时文件而无法运行请问:如何把数据库应用系统做在CD盘上而又能正常运行.注:我的系统只对数据库表进行读操作

解决方案 »

  1.   

    正确的做法是:复制到TEMP文件夹,用完后删除它
      

  2.   

    Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db1.mdb;Mode=Read|Share Deny Read|Share Deny Write;Persist Security Info=False设计期连接不要打开,在运行时再设置连接字符串并打开连接
      

  3.   

    用过的光盘是一般是不能再写入东西的.你可能没注意.Mdb文件运行的时候会生成临时文件.而这个临时文件会需要"写".所以用Access在光盘上运行是不可能的不过用Sql是可以的.
      

  4.   

    这算是Access数据库的一个缺点。
    没办法,只能先拷到硬盘,或者改用其它类型的数据库。
      

  5.   

    曾经也有人问到想让Access数据库在打开时不创建它的临时读写文件(.ldb),但好象没有解决的方法
      

  6.   

    没有什么好办法不生成IDB文件,改用XML或者其它数据库好了