2

Jython プログラムからデータベースに接続できません。Pure 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"

出力:

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

ネイティブ Java プログラムはネイティブ ドライバを使用してこのデータベースに接続できますが、私の CLASSPATH は適切に設定されていると思います。すべての JDBC ドライバーの cachedir\packages に .pkc ファイルがあることがわかりました。

データベース接続を取得するには何を設定すればよいですか?

4

3 に答える 3

0

私は同じ問題を抱えていて、 --verify フラグを使用できませんでした (jython は不明なスイッチについて不平を言いました)。1.5 ではなく 1.6 仮想マシンを使用するように OS X Leopard Java を構成するとすぐに、問題は魔法のように消えました。

于 2009-03-24T22:07:59.113 に答える