質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

JDBC

JDBC(Java DataBase Connectivity)は、Javaとリーレーショナルデータベースに接続させる基本的なAPIです。Java上でSQLステートメントを発行することで、データベースの種類に影響を受ないDB操作を可能とします。

Q&A

解決済

1回答

443閲覧

JDBCを使ってMYSQLに接続後、selectを使用してデータを表示さたいです。

r-x

総合スコア14

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

JDBC

JDBC(Java DataBase Connectivity)は、Javaとリーレーショナルデータベースに接続させる基本的なAPIです。Java上でSQLステートメントを発行することで、データベースの種類に影響を受ないDB操作を可能とします。

0グッド

0クリップ

投稿2018/03/13 01:51

編集2018/03/13 02:07

前提・実現したいこと

JDBCを使ってMYSQLに接続後、selectを使用してデータを表示さたいです。

発生している問題・エラーメッセージ

エラーメッセージは表示されないのですが、MYSQLに反映がされません。
insertを使った追加もためしてみましたがこちらも「ビルド成功」と表示はされますが反映がされていません。

該当のソースコード

lang

1 2 3 4import java.sql.Connection; 5import java.sql.SQLException; 6import java.sql.*; 7 8 9 10 11public class sqldb2 { 12 public static void main (String[] args){ 13 Connection db_con = null; 14 PreparedStatement db_st = null; 15 ResultSet db_data = null; 16 17 try 18 { 19 Class.forName("com.mysql.jdbc.Driver").newInstance(); 20 db_con = DriverNanager.getConnection("jdbc:mysql://localhost:3306/profiles", "username","ps"); 21 22 23 //1 ageが33を取得 ? に 33を設定 24 db_st = db_con.prepareStatement("select * from profiles where age = ?"); 25 db_st.setInt(1, 33); 26 27 28 // ResultSetからsqlの情報を取り出し表示する。 29 db_data = db_st.executeQuery(); 30 while(db_data.next()){ 31 System. out.print("名前:" + db_data.getString("name") + "<br>"); 32 33 34 } 35 36 37 38 //クローズ 39 db_data.close(); 40 db_st.close(); 41 db_con.close(); 42 43 44 45 }catch (SQLException e_sql){ 46 System.out.println("接続出来ました;" + e_sql.toString()); 47 }catch(Exception e){ 48 System.out.println("接続時にエラーが発生しました;" + e.toString()); 49 }finally{ 50 if(db_con != null) { 51 try{ 52 db_con.close(); 53 }catch(Exception e_con){ 54 System.out.print(e_con.getMessage()); 55 } 56 } 57 } 58 } 59} 60 61

試したこと

・ドライブが正確にインストールされているかの確認
(こちらはライブラリの中に瓶のようなアイコンで表示されています)
・insertやUodateも使用してみましたが、毎回同じ様に{ビルド成功と表示されてしまいます。}

補足情報(FW/ツールのバージョンなど)

NetBeansのJavaクラスを使用しています。

プログラミングも初めたばかりでこちらのサイトも初めて使用するので、足りない情報などがあるかもしれませんが、もし原因など分かる方が居ましたご教授下さい。
宜しくお願います。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

r-x

2018/03/13 02:08

ありがとうございます!
Udomomo

2018/03/13 02:10 編集

ビルドした後に、ちゃんとjarファイルを実行していますか?
r-x

2018/03/13 02:20

初歩的な質問ですみません。プロジェクト名をクリックしてファイルの実行を押しているのですが、この後に別でjarファイルを実行が必要なのでしょうか?
szk.

2018/03/13 02:26

tryの上に「System. out.print("start");」入れて実行すると、コンソールにstartって出ますか?
unz.hori

2018/03/13 02:37

知らんけど、NetBeansってプロジェクト名のクリックで実行なん?
r-x

2018/03/13 02:52

System. out.print("start");を入力すると表示されます!
unz.hori

2018/03/13 03:44

DB名とテーブル名が同じなんですか?
r-x

2018/03/13 04:03

はい、間違えないように同じにしてしまいました。念の為に違う名前のものを作って試してみます。
szk.

2018/03/13 14:48

profilesテーブルにデータはちゃんと入っていますか。あとSQLのwhere句を除いて実施してみるとどうでしょうか。
r-x

2018/03/14 01:56

profilesテーブルにデータは入っていました!whereを除いて実行も試してみます、ありがとうございます!
r-x

2018/03/14 01:56

profilesテーブルにデータは入っていました!whereを除いて実行も試してみます、ありがとうございます!
guest

回答1

0

ベストアンサー

誤:DriverNanager.getConnection
正:DriverManager.getConnection

MYSQLのユーザが
username@%のままであれば、username@localhostへ変更

あと、

}catch (SQLException e_sql){ System.out.println("接続出来ました;" + e_sql.toString()); }

ですが、SQLExceptionなので、「接続出来ました」ではなく、「接続出来ませんでした」です。

(こちらはライブラリの中に瓶のようなアイコンで表示されています)

mysql-connector-java-5.1.46.jarを使用。

以上の状態にて、profilesにデータを手動でinsertして、
Eclipseで動作させて、

名前:(insertした名前) <br>

と表示されました。

投稿2018/03/13 22:18

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

r-x

2018/03/14 01:55

とてもわかり易い解答ありがとうございます! ご指摘頂いた箇所は修正しました! もう一点お聞きしたいのですが、正:DriverManager.に変更した所エラーがでてしまいます、インポートもしましたがなぜか未使用のインポートと表示されて、新しくプロジェクトから作り直しても同じエラーが出てしまいます。 調べてみたのですがまだ解決策が見つかっていません、もしこのような場合に考えられる原因などがありましたら教えて頂けますでしょうか。 よろしくお願い致します。
unz.hori

2018/03/14 01:58

未使用のインポートって使ってないから出るんでしょ
r-x

2018/03/14 02:09

新しいプロジェクで教えて頂いたとおりに何度かやってみた所無事表示されました!! 本当にありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問