1

jdk1.7.0_06にあるデータベースサーバーJAVADBにインストールされているデータを取得しようとしています。サーバーに接続してデータベースを作成することができます。しかし、コンパイルと実行で次のエラーが発生します。

No suitable driver found for jdbc:derby:AddressBook

助けてくれますか!ありがとうございました

4

1 に答える 1

2

「JavaDBチュートリアルが示唆するようにプロパティを設定する必要があるかどうか疑問に思いますderby.system.home。これを試しましたか?System.setProperty("derby.system.home", DERBY_HOME_PATH);2番目のパラメータがデータベースのホームディレクトリへのパスであるようなものです。」

そして、あなたは答えました:

@HovercraftFullOfEels、私はそうしなかったと思いますが、コマンドラインを介していくつかの不変変数を設定したと確信しています。

@Dorji:JVMのシステムプロパティは設定されません。データベースを使用する前に、このプロパティを設定する必要があると思います。例えば、

public class Test {
   public static final String DERBY_HOME = "derby.system.home";

   // ***** the two Strings below will be different for you *****
   public static final String DERBY_HOME_PATH = "D:/DerbyDB";
   private static final String DB_NAME = "sample";

   public static void main(String[] args) {
      System.setProperty(DERBY_HOME, DERBY_HOME_PATH);
      Connection conn = null;
      try {
         Class.forName("org.apache.derby.jdbc.EmbeddedDriver").newInstance();
         conn = DriverManager.getConnection("jdbc:derby:" + DB_NAME);

      } catch (InstantiationException | IllegalAccessException
            | ClassNotFoundException | SQLException e) {
         e.printStackTrace();
      } finally {
         if (conn == null) {
            System.exit(-1);
         }
      }

      // .... etc...

私のderby.system.homeディレクトリはD/:DerbyDBであり、私のデータベースはD /:DerbyDB/サンプルディレクトリにあります。

ここに画像の説明を入力してください

もちろん、これはあなたにとっては異なります。

于 2012-08-25T21:33:39.063 に答える