回 帖 发 新 帖 刷新版面

主题:动态的修改程序中连接的Access数据库

程序文件夹(包括Access)在e:\\debug里
然后把debug文件夹移到d:\\debug,现在Access数据库在d:\\debug中
在程序中应该怎样修改代码才能实现debug中的程序能够顺利打开Access数据库?
我用的是oleDBConnection1连接的,其中的
this->oleDbConnection1->ConnectionString =S"..."
    S"Data Source=\"E:\\DocManage\\DocManage\\Debug\\Doc.mdb\";  ..."
是不是得修改这里,还是有其它函数?请各位大侠帮忙!!!

回复列表 (共1个回复)

沙发

我是在Form1中添加oleDbDataAdapter1然后连接到Access数据库的,在oleDbDataAdapter上点右键,选中“配置数据适配器...”,在里面的连接的窗口中选择Access数据库Doc.mdb文件,则它的默认路径是如:e:\a\b\Doc.mdb,这时可以把它改为“\Doc.mdb”,就可以在整个目录移动时,运行程序都可以找到Access数据库了。

也可以直接修改代码:Form1.h中->void InitializeComponent(void)->
            //
            // oleDbConnection1
            // (当然oleDbDataAdapter的连接得先配置好了)
->
            this->oleDbConnection1->ConnectionString = S"Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Registry Path=;Jet OLEDB:Database L"
S"ocking Mode=1;Data Source=\"e:\\a\\b\\Doc.mdb\"Jet OLEDB:Engin"

修改其中的e:\\a\\b\\Doc.mdb为.\\Doc.mdb整个为:Data Source=\".\\Doc.mdb\"

但vc编译器中运行时调用的是debug外面vc编译器生成的vc++Project目录下的数据库,即它寻找的是vc++Project的目录A+\\Doc.mdb。但当运行debug中生成的应用程序时,
寻找的是应用程序的目录+\\Doc.mdb,即debug的目录B+\\Doc.mdb。
所以修改路径时,vc++Project的目录下也要保证有一个数据库Doc.mdb,才能在编程时能够运行。

我来回复

您尚未登录,请登录后再回复。点此登录或注册