如何从Jython连接到数据库

Mic*_*las 1 jython jdbc

我无法从我的Jython程序连接到数据库.纯Java程序可以连接,我可以从Jython连接到db,但只使用JDBC-ODBC桥:"sun.jdbc.odbc.JdbcOdbcDriver".如果我使用本机JDBC驱动程序,我的程序会因"找不到驱动程序"异常而失败.

码:

import sys
from com.ziclix.python.sql import zxJDBC

connection1 = zxJDBC.connect('jdbc:odbc:test_odbc', 'postgres', 'postgres', 'sun.jdbc.odbc.JdbcOdbcDriver')
print "JDBC:ODBC connection set"
connection2 = zxJDBC.connect('jdbc:postgresql://127.0.0.1/test?stringtype=unspecified', 'postgres', 'postgres', 'org.postgresql.Driver')
print "JDBC native connection set"
Run Code Online (Sandbox Code Playgroud)

输出:

C:\tools\pyscripts\scripts\db_examples>jython --version
Jython 2.5b1 (trunk:5903:5905, Jan 9 2009, 16:01:29)
[Java HotSpot(TM) Client VM (Sun Microsystems Inc.)] on java1.6.0_11

C:\tools\pyscripts\scripts\db_examples>jython pg_test.py
JDBC:ODBC connection set
Traceback (most recent call last):
  File "pg_test.py", line 6, in <module>
    connection2 = zxJDBC.connect('jdbc:postgresql://127.0.0.1/test?stringtype=un
specified', 'postgres', 'postgres', 'org.postgresql.Driver')
zxJDBC.DatabaseError: driver [org.postgresql.Driver] not found
Run Code Online (Sandbox Code Playgroud)

我认为我的CLASSPATH设置正确,而本机Java程序可以使用本机驱动程序连接到此数据库.我发现所有JDBC驱动程序都在cachedir\packages中有.pkc文件.

我应该设置什么来获取数据库连接?

Mic*_*las 8

我会自己回答:

Jython 2.5b1中存在错误:当安装在引导类路径上时,Jython在动态加载类时存在问题

如果我用--verify标志调用它,我就可以运行我的程序.

Bug在Jython 2.5b3中消失了