主题:动态的修改程序中连接的Access数据库
xiaolan458
[专家分:0] 发布于 2005-10-25 14:27:00
程序文件夹(包括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个回复)
沙发
xiaolan458 [专家分:0] 发布于 2005-10-26 09:28:00
我是在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,才能在编程时能够运行。
我来回复