• 締切済み

JAVAでderbyに接続できない

java+eclipseでデータベースの勉強をしているのですが derbyの接続が上手くできません。 オラクル接続はできたのですが、今オラクルが使えない環境なので、derbyに接続したいのです。テーブルなどはプラグインで作成できているので、インストールは上手くできていると思います。接続用クラスと分けて作っているのですが、 呼び出す別クラスのsmt = con.createStatement();でエラーがでています。java.lang.NullPointerException 組み込み用ドライバで行っています。 接続用メソッドにしているサンプルはどこかにないでしょうか?探しているのですが。。基本的にオラクルとさほど 変更しなくても接続できるはずなのですが。。。 教えて下さい。お願いします。。

みんなの回答

  • tom11
  • ベストアンサー率53% (134/251)
回答No.2

こんにちは、 derby使うなら、ideにnetbeansを使っては、 プログラミングで、操作も出来ますが。 サービスで、derbyの起動、sqlの実行が容易に出来るし、 テーブルの作成も容易だし接続設定も容易ですよ。 データベースファイルも作るのが簡単です。 http://www.netbeans.org/kb/docs/ide/java-db_ja.html ちなみに、MySQLでも、接続は同様に容易ですし、 SQLサーバーでも、同様な操作で、利用できます。 プログラミングは、こちらを憶えてから、 やると、楽かも!!!!!!!!

devid
質問者

補足

ありがとうございます。使うかもしれません。 javaで接続ができないんです~。 なんでだー。orz

  • x_jouet_x
  • ベストアンサー率68% (162/236)
回答No.1

smt = con.createStatement(); でNullPointerExceptionということはConnectionオブジェクトが生成されていないと思います。 サンプルサイトは見つかりませんでしたが、以下の手順で組み込みではなく通常のやり方でDB作成およびプログラムを組んでみて下さい。 1. ijを起動して ij> connect 'jdbc:derby://localhost/[データベース名];create=true'; と入力してDBを作成。 2. JDBCドライバにClientDriverを使用するので、 Class.forName("org.apache.derby.jdbc.ClientDriver"); に変更します。 3. Connectionオブジェクトを取得するコード(例)を以下のように記述します。 ---------- public Connection getConnection() throws ClassNotFoundException, SQLException { String url = "jdbc:derby://localhost/[データベース名]"; Class.forName("org.apache.derby.jdbc.ClientDriver"); Connection conn = DriverManager.getConnection(url); return conn; } ---------- これでConnectionオブジェクトが取得できると思います。 ちなみに私もEmbeddedDriverを使って試してみたのですが、SQLExceptionが出てうまくいきませんでした。

devid
質問者

補足

コメントありがとうございます。 1. ijを起動して ij> connect 'jdbc:derby://localhost/[データベース名];create=true';と入力してDBを作成。 まずここで Connection refused: connect でエラーとでます。。 通常のconnect 'jdbc:derby:Sampleなどとすると作成されます。 えーderby難しいのかな~。Mysqlのほうがいいのかなー?? EmbeddedDriverならDBviewwerだと上手くいって追加更新削除もできて べんりなのですが、JAVAの接続ができない・・・

関連するQ&A