【发布时间】:2020-09-28 18:27:54
【问题描述】:
试图让组合 jython-zxJDBC-UCanAccess 在我的 Windows 机器上工作;一整天都让我发疯,因为我一直在发疯
zxJDBC.DatabaseError(未找到驱动程序 [net.ucanaccess.jdbc.UcanaccessDriver]),以及 zxJDBC.DatabaseError(未找到驱动程序 [ucanaccess])
我一直在使用来自 Gord Thompson 的示例代码和我的详细信息 - 无论我尝试什么,都会因未找到驱动程序错误而失败:
from com.ziclix.python.sql import zxJDBC
#Or also import ucanaccess
jdbc_url = "jdbc:ucanaccess://Z:/Companies.accdb"
username = ""
password = ""
driver_class = "net.ucanaccess.jdbc.UcanaccessDriver"
#Or driver_class = "net.ucanaccess.jdbc.UcanloadDriver"
cnxn = zxJDBC.connect(jdbc_url, username, password, driver_class)
crsr = cnxn.cursor()
crsr.execute("SELECT * FROM tblSICs")
for row in crsr.fetchall():
print row[0]
crsr.close()
cnxn.close()
- 单独使用 Jython 效果很好,我将它与 SikuliX IDE 一起使用
- 'from ... import zxJDBC' 无错误通过
- UCanAccess 在我的 MS 的命令行 (console.bat) 中运行良好 访问数据库;所有 5 个 JAR 都在 CLASSPATH 变量中
我不明白什么是“driver_class”?我认为特定于数据库的驱动程序是通过 Jython/SikuliX 在 CLASSPATH 中查找的,其中可以看到“.../ucanaccess-5.0.0.jar”。
这里是类路径:
"c:\Users\User\AppData\Roaming\UCanAccess\lib\hsqldb-2.5.0.jar;c:\Users\User\AppData\Roaming\UCanAccess\lib\jackcess-3.0.1.jar;c:\Users\User\AppData\Roaming\UCanAccess\lib\commons-lang3-3.8.1.jar;c:\Users\User\AppData\Roaming\UCanAccess\lib\commons-logging
-1.2.jar;c:\Users\User\AppData\Roaming\UCanAccess\ucanaccess-5.0.0.jar"
这里是 SikuliX IDE 寻找资源的地方:
D:\Drawer 3\Sikuli\Training\UCanAccess.sikuli Z:\test.sikuli C:\Users\User\AppData\Roaming\Sikulix\Lib\site-packages C:\Users\User\AppData\Roaming\Sikulix\Lib C:\Users\User\AppData\Roaming\Sikulix\Extensions\Lib C:\Users\User\AppData\Roaming\Sikulix\Extensions\jython-standalone-2.7.2.jar\Lib 类路径 pyclasspath/
有人发现问题吗?
【问题讨论】:
标签: jdbc ucanaccess jython-2.7 sikuli-x