- 締切済み
JAVAでderbyに接続できない
java+eclipseでデータベースの勉強をしているのですが derbyの接続が上手くできません。 オラクル接続はできたのですが、今オラクルが使えない環境なので、derbyに接続したいのです。テーブルなどはプラグインで作成できているので、インストールは上手くできていると思います。接続用クラスと分けて作っているのですが、 呼び出す別クラスのsmt = con.createStatement();でエラーがでています。java.lang.NullPointerException 組み込み用ドライバで行っています。 接続用メソッドにしているサンプルはどこかにないでしょうか?探しているのですが。。基本的にオラクルとさほど 変更しなくても接続できるはずなのですが。。。 教えて下さい。お願いします。。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- tom11
- ベストアンサー率53% (134/251)
こんにちは、 derby使うなら、ideにnetbeansを使っては、 プログラミングで、操作も出来ますが。 サービスで、derbyの起動、sqlの実行が容易に出来るし、 テーブルの作成も容易だし接続設定も容易ですよ。 データベースファイルも作るのが簡単です。 http://www.netbeans.org/kb/docs/ide/java-db_ja.html ちなみに、MySQLでも、接続は同様に容易ですし、 SQLサーバーでも、同様な操作で、利用できます。 プログラミングは、こちらを憶えてから、 やると、楽かも!!!!!!!!
- x_jouet_x
- ベストアンサー率68% (162/236)
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が出てうまくいきませんでした。
補足
コメントありがとうございます。 1. ijを起動して ij> connect 'jdbc:derby://localhost/[データベース名];create=true';と入力してDBを作成。 まずここで Connection refused: connect でエラーとでます。。 通常のconnect 'jdbc:derby:Sampleなどとすると作成されます。 えーderby難しいのかな~。Mysqlのほうがいいのかなー?? EmbeddedDriverならDBviewwerだと上手くいって追加更新削除もできて べんりなのですが、JAVAの接続ができない・・・
補足
ありがとうございます。使うかもしれません。 javaで接続ができないんです~。 なんでだー。orz