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

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

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

Oracleは、米オラクルが取り扱うリレーショナルデータベース管理システムです。メインフレームからPCまで、多様なプラットフォームに対応しています。

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

Q&A

2回答

34543閲覧

テーブルにデータが0件のときメッセージ表示

退会済みユーザー

退会済みユーザー

総合スコア0

Oracle

Oracleは、米オラクルが取り扱うリレーショナルデータベース管理システムです。メインフレームからPCまで、多様なプラットフォームに対応しています。

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

0グッド

0クリップ

投稿2017/07/27 05:49

編集2017/07/27 05:50

###前提・実現したいこと
全件検索を行ったときに社員情報の登録件数が0件の場合
データは0件ですという表示を行いたい


全件検索をします
社員ID 社員名 性別 生年月日 部署名
社員が登録されていません

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

データが無い場合のメッセージの表示が分からない

###該当のソースコード

Java

1public static void select() { 2 Connection connection = null; 3 PreparedStatement preparedStatement = null; 4 ResultSet resultSet = null; 5 try { 6 // DB接続 7 connection = DBManager.getConnection(); 8 9 // SQL文の準備 10 String sql = "select E.emp_id , E.emp_name , E.gender , E.birthday , D.dept_name FROM employee E INNER JOIN department D ON E.dept_id = D.dept_id ORDER BY emp_id"; 11 12 // ステートメント作成 13 preparedStatement = connection.prepareStatement(sql); 14 15 // SQL実行 16 resultSet = preparedStatement.executeQuery(); 17 18 // レコード出力 19 System.out.println("社員ID\t社員名\t\t性別\t生年月日\t部署名"); 20 while (resultSet.next()) { 21 System.out.print(resultSet.getString("emp_id") + "\t\t"); 22 System.out.print(resultSet.getString("emp_name") + "\t"); 23 if (resultSet.getInt("gender") == 1) { 24 System.out.print("男性\t"); 25 } else { 26 System.out.print("女性\t"); 27 } 28 SimpleDateFormat sm = new SimpleDateFormat("yyyy/MM/dd"); 29 String birthday = sm.format(resultSet.getDate("birthday")); 30 System.out.print(birthday + "\t"); 31 System.out.println(resultSet.getString("dept_name")); 32 } 33 // 空白 34 System.out.println(); 35 } catch (Exception e) { 36 e.printStackTrace(); 37 } finally { 38 // クローズ処理 39 // ResulutSetクローズ 40 DBManager.close(resultSet); 41 // Statementクローズ 42 DBManager.close(preparedStatement); 43 // DBとの接続の切断 44 DBManager.close(connection); 45 } 46 }

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

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

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

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

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

guest

回答2

0

if (resultSet.Count = 0){
System.out.println("データがありません");
}else{
if (resultSet.getInt("gender") = "1"){
System.out.println("男性");
}else{
System.out.println("女性");
}
}

という感じですかね。

投稿2017/07/27 06:20

編集2017/07/27 06:20
King_of_Flies

総合スコア382

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

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

motuo

2017/07/27 06:33

javaのresultSetに、countは無いのでは…
guest

0

データが無い場合のメッセージの表示が分からない

というのは、データが0件の場合の判定の仕方が分からない、と理解しましたが…

変数にcountを作ってwhile中でカウントアップ、後の処理で0かどうか判定する。

もしくは、resultset.last()にて、レコードの有無を判定するとかですかね。

java

1if(resultset.last()){ 2 resultset.beforefirst(); 3 //レコードがあった時の処理 4}else{ 5 //レコードが無かった時の処理 6}

投稿2017/07/27 06:03

motuo

総合スコア3027

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問