2

に何かを挿入する必要がありDBます。として使用JDBCconnector, jython the scriptmysqlDB とスクリプトは で実行されていCentOSます。

私のコードは次のようになります。

からcom.android.monkeyrunner import MonkeyRunner, MonkeyDevice, MonkeyImage

からcom.ziclix.python.sql import zxJDBC

  db=zxJDBC.connect("jdbc:mysql://XXX.XXX.XXX.XXX:3306/dbname","USER","PASSWORD","org.gjt.mm.mysql.Driver")

c=db.cursor() c.execute("INSERT INTO tablename values ('X','X','X')")

その前に、ここからファイルをダウンロードして解凍しました(デスクトップ内)

これを行うことでクラスパスへのパスを追加しました

 export PATH=/home/XX/Desktop/mysql-connector-java-5.1.22

スクリプトを実行すると、このエラーが発生しました

zxJDBC.DatabaseError.driver [org.gjt.mm.mysql.Driver]見つかりません

私は何を間違えましたか?ドライバー名の名前は正しいですか?私が見たチュートリアルの1つでそれをコピーしたからです。または、おそらくドライバーを正しくインストールしましたか?

ありがとう。

4

3 に答える 3

3

これは私がエラーを解決する方法です:

  1. ここから JDBC ドライバーをダウンロードします。

  2. tar.gz ファイルを任意の場所に抽出します。

  3. そのフォルダー内に mysql-connector-java-5.1.22-bin.jar があります。それをコピーして(私の場合) /%android-sdk%/tools/lib に貼り付けます

  4. mysql-connector-java-5.1.22-bin.jar の新しい場所をクラスパスに追加します

  5. このようにスクリプトを実行します

com.android.monkeyrunner から MonkeyRunner、MonkeyDevice、MonkeyImage をインポート

com.ziclix.python.sql から zxJDBC をインポート

db=zxJDBC.connect("jdbc:mysql://XXX.XXX.XXX.XXX:3306/dbname","USER","PASSWORD","com.mysql.jdbc.Driver")

c=db.cursor()

c.execute("INSERT INTO テーブル名の値 ('X','X','X')")

デシベル。コミット()

今後必要となる方の参考になれば幸いです。:)

于 2012-10-16T07:04:16.457 に答える
0

どのようにjthonを実行していますか? スタンドアロン インストール、つまり java -jar jython.jar を使用している場合は、Java ドキュメントから...

-jar

このオプションを使用すると、JAR ファイルがすべてのユーザー クラスのソースとなり、他のユーザー クラス パス設定は無視されます。

...クラスパスには何も追加できません。必要なクラスを jython jar に再​​パッケージ化することは 1 つのアプローチです。または、この回答には別の解決策があります。基本的には jython.jar もクラスパスに追加し (-cp または CLASSPATH を使用)、org.python.util.jython クラスを直接実行します。

于 2014-11-06T12:07:44.377 に答える