注册 登录
编程论坛 VB6论坛

请问,为什么 调试运行 和 实际运行时,结果不一样?谢谢!

mansohu 发布于 2016-05-12 13:52, 2729 次点击

我在VB6中用以下代码连接 Access2010 数据库文件:
CnnStr = "Provider=Microsoft.ACE.OLEDB.12.0" & _
           ";Data Source=" & AcsFile & "" & _
           ";User ID='" & UserID & "'" & _
           ";Jet OLEDB:Database password=" & Password & "" & _
           ";Persist Security Info=False"
Cnn.Open CnnStr

在VB6的调试状态下运行时,可以正常连接
但生成后运行时,就连接不上了,Errdescripion为“密码错误”,请问这是怎么回事?
谢谢!
8 回复
#2
xiangyue05102016-05-12 14:17
估计是AcsFile,如何定义的?
#3
mansohu2016-05-12 17:13
回复 2楼 xiangyue0510
就是 Access 文件的地址,还请指导,谢谢!
#4
ZHRXJR2016-05-12 17:56
一般数据库设置的密码应该是字符串,password=" & Password & " 是不是数字的连接,应该修改为 password='" & Password & "',所以出现了 Errdescripion为“密码错误” 的错误。
#5
mansohu2016-05-12 21:09
回复 4楼 ZHRXJR
我试了,有没有单引号在状态下都能连接,在生成的程序里都有 密码错误,还请指导 ,谢谢!
#6
ZHRXJR2016-05-12 22:50
那么最大的可能是你在调试时连接的数据库与生成exe后连接的数据库不是同一个数据库文件,二个数据库密码不同而造成的,不然调试没有问题,生成后肯定没有问题的。
我以前也遇到过,一个数据库有密码,另一个没有密码,数据库文件的文件名与扩展名都一样,结果产生数据库密码错误,将数据库文件替换后就没有问题了。
#7
csl5912016-05-13 15:15
楼上说得对极了。
#8
mansohu2016-05-14 14:54
回复 6楼 ZHRXJR
我试了一下,把那个Access文件的文件名修改后,两种方法就都找不到文件了,还请指导,谢谢!郁闷
#9
hjxlj2016-05-14 15:22
加我QQ,给你远程看一下,光在这里唧唧歪歪说不清楚
1