夜分失礼します。
上記内容について教えてください。
今JAVAを用いてレコード件数(200件)を表示させようとしています。
しかし、レコードセットの表示方法しか知らず、またレコード件数をPHPで表示させる方法くらいしか検索できませんでした。どこがいけないか指摘してください。
以下にコア部分を書きます。
// ドライバクラスをロード
Class.forName("org.gjt.mm.mysql.Driver");
// データベースへ接続
String url = "jdbc:mysql://localhost:3306/db";
con = DriverManager.getConnection(url,"root","**********")
stmt2 = con.createStatement();
strQuery2 = " select count(*) AS RecordNums from ********** ";
ResultSet rs2 = stmt2.executeQuery( strQuery2 );
SumNo = rs2.getFetchSize();
どうしてもSumNo=0となってしまいます。
No.3ベストアンサー
- 回答日時:
>「java.sql.SQLException: Before start of result set SQL 」
>というエラーが出ました。
>このエラーは何を表しているのでしょうか??(・_・?)
ResultSetのURLを見てもらうと書いていますが、「初期状態では、カーソルは~」という理由で
getInt(int columnIndex) メソッドを呼び出す前に
next() メソッドを呼び出す必要があります。
つまり、
Connection con =DriverManager.getConnection(~);
Statement stmt = con.createStatement();
String sql="";
ResultSet rs = stmt.executeQuery(sql);
while(rs.next())
{
int int_a = rs.getInt(~);
String str_a = rs.getString(~);
String str_b = rs.getString(~);
}
stmt.close();
con.close();
という使い方がDBへアクセスするときのひとつの流れです。(select文の結果を全て表示したいときですが)
>「public int getInt(int columnIndex)」
>この宣言はするべきなのでしょうか?
>これを追加すると(public int getInt;)ここがエラーになります。
どのクラスに定義しようとしていて、どんなエラーが出たのかよくわからないのでなんともいえませんが、インターフェースResultSetにはこのメソッドがすでに定義されているので、あなたがResultSetをimplementsしたクラスを作ろうとしているのならともかく、ResultSetをimplementsしたクラスを使うだけならこのメソッドを定義する必要はありません。
ところで、改行の問題はうまくいったんですか?
この回答への補足
詳しいご説明、ありがとうございました。
rs.next()が抜けていたのが問題だったようです。しかし、この問題が解決するとまた別のところにエラーが出てきました。これは自力で何とかします。
改行ですが・・結局JAVAで書くのは断念し(おい!
おとなしくout.println("<br>")とすることにしました。どうしたかを書くべきでした。申し訳ありません。
(〃⌒ー⌒〃)∫
No.2
- 回答日時:
こんにちわ
ResultSet rs2 = stmt2.executeQuery( strQuery2 );
の後に
while(rs2.next()){
SumNo = rs2.getInt(1);
}
を書いてください。
ResultSet取得後、next()で
カーソルを現在の位置から 1 行下に移動しないと
値は取れません。
next()すれば、
SumNo = rs2.getFetchSize();
でも取れるかもしれません。(試してませんが)
でも私ならgetInt()で件数は取得します。
この回答への補足
ありがとうございます。
rs.next()を追加すると解決しました。
ただ、whileのなかに入れる必要はないようです。
(一つの値として取得しているので)(=´∇`=)
いずれにしても、ありがとうございました。m(__)m
No.1
- 回答日時:
count(*)の結果を取得したいんですよね?
でしたら、
SumNo = rs2.getFetchSize();
ではなく、
SumNo = rs2.getInt(1);
が正解です。
いちど、ResultSetのAPI仕様に目を通すことをおすすめします。
参考URL:http://java.sun.com/j2se/1.4/ja/docs/ja/api/java …
この回答への補足
ご解答ありがとうございます。
実はSQLコマンドのことはよく知らないのです。
API使用の参考の仕方から覚えようと努力します。
また、上記方法で試してみたのですが、
「java.sql.SQLException: Before start of result set SQL 」
というエラーが出ました。
このエラーは何を表しているのでしょうか??(・_・?)
「public int getInt(int columnIndex)」
この宣言はするべきなのでしょうか?
これを追加すると(public int getInt;)
ここがエラーになります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHP MySql ページング 2 2022/09/20 06:38
- PHP コメント機能に返信欄を矢印で追加したい 1 2022/05/09 21:17
- その他(プログラミング・Web制作) pythonリストの特定の値を表示htmlで表示できない 2 2022/05/14 05:48
- PHP PHP ページング データベース 1 2022/06/16 10:30
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- MySQL うまくいきません教えてくださいお願いしますSQLです。クエリ構文です。 1 2023/07/07 12:39
- MySQL mysqlがインストールされているのかどうか 1 2023/06/05 14:19
- MySQL PHPとMySQLを使った掲示板の作り方 1 2022/06/02 13:00
- MySQL mysqlがインストールされているのかわかりません 1 2023/06/05 02:26
- MySQL SQLです。こんな感じですか?あってますか? うまくいきません教えてくださいお願いします 1 2023/07/08 15:27
このQ&Aを見た人はこんなQ&Aも見ています
-
餃子を食べるとき、何をつけますか?
みんな大好き餃子。 ふと素朴な疑問ですが、餃子には何をつけて食べますか? 王道は醤油とお酢でしょうか。
-
これ何て呼びますか
あなたのお住いの地域で、これ、何て呼びますか?
-
「これはヤバかったな」という遅刻エピソード
寝坊だったり、不測の事態だったり、いずれにしても遅刻の思い出はいつ思い出しても冷や汗をかいてしまいますよね。
-
おすすめのモーニング・朝食メニューを教えて!
コメダ珈琲店のモーニング ロイヤルホストのモーニング 牛丼チェーン店の朝食などなど、おいしいモーニング・朝食メニューがたくさんありますよね。
-
【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
【お題】 ・このサンタクロースは偽物だと気付いた理由とは?
-
データ数をカウントしたいのですが
Java
-
count(*)で取得した値をJAVAの変数に代入するには?
Java
-
フォーム上で押されたボタンによってサーブレットの処理を変えたい
Java
-
-
4
JSPのクラスをコンパイルできない問題
Java
-
5
MySQLでデータベースにデータinsert時のエラー。
Java
-
6
webアプリを作ってます。エラーがあります。
Java
-
7
リクエストに応じたselectedの初期値設定方法
Java
-
8
JSPでリンクを利用してパラメータを次画面に渡す方法について。
Java
-
9
JSPやサーブレットでSystem.out.println()などでコンソールに出力できますでしょうか?
Java
-
10
「<c:forEach タグが終了していません」というエラーが出てしまう
Java
-
11
final修飾子を使っているのに、なぜエラーが出るのでしょうか?
Java
-
12
servletからjspへオブジェクトの配列情報を送る方法
Java
-
13
「マスタ」と「テーブル」の違いとはなんでしょうか?
Oracle
-
14
<forEach> 内で供給された items" を反復処理する方法が不明です"
Java
-
15
JSPからJSPへ情報を渡せる?
Java
-
16
オブジェクトの中のプロパティを認識できません
Java
-
17
jspにcssを反映させるには
HTML・CSS
-
18
外部参照してるキーを主キーにすることは可能?
その他(データベース)
-
19
[JAVA]try 内の変数を外で!?
Java
-
20
a href=..." とServlet"
Java
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
StringBufferからStringへキャ...
-
親の親のメソッドを呼ぶには?
-
Java初級 引数に適用できません
-
String.containsの反対機能はあ...
-
件数取得方法
-
abstract と static を一緒に付...
-
return new使用時
-
レコード件数の表示
-
C言語での文字列より値を抜き出す
-
C# でメソッドに送られてきたOb...
-
リストボックスの並べ替え (VB...
-
javaに"search"という関数 or ...
-
シェルスクリプトからのJavaメ...
-
HttpURLConnectionでBasic認証...
-
なぜprotected overrideなのか
-
スーパークラスからサブクラス...
-
レジストリキーの検索をする方...
-
EXCELを開いてマクロを自動起動...
-
YYYYMMDD書式の日付に対する適...
-
JUnitのテストメソッドごとのメ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
String.containsの反対機能はあ...
-
Java初級 引数に適用できません
-
StringBufferからStringへキャ...
-
レコード件数の表示
-
なぜprotected overrideなのか
-
Java初心者です、エラーの意味...
-
C# でメソッドに送られてきたOb...
-
Google Apps Script で getRang...
-
abstract と static を一緒に付...
-
C# 点の描き方をおしえてくだ...
-
別クラスのmainメソッドの実行
-
javaに"search"という関数 or ...
-
YYYYMMDD書式の日付に対する適...
-
Strutsでチェックボックスの値...
-
Javaの関数名が長い?
-
return new使用時
-
readLine()ではじめから読み直...
-
シェルスクリプトからのJavaメ...
-
java ジェネリックスに関して
-
Fileの読み取り専用の解除
おすすめ情報