perlのDBIモジュールを使って、mysqlのレコード件数を表示させてみると、すごい数が表示されました。ソースは以下の通りです。
use DBI;
$dbh=DBI->connect("DBI:mysql:データベース名:サーバ名", "ユーザ名", "パスワード") || die $DBI::errstr;
if(!$dbh){
print "エラーです。入力を確認してください。";
exit;
}else{
#接続成功
# SELECT文発行
$sth=$dbh->prepare("SELECT sei, mei, mail FROM table");
#実行
$sth->execute;
$num_rows = $sth->rows;
print "該当 $num_rows, 件\n";
# 開放
$sth->finish;
# AUTO COMMITがOFFの場合はCOMMITが必要
$dbh->commit;
# 切断
$dbh->disconnect;
}
実行すると該当 4294967294, 件 とブラウザに表示されました。僕はレンタルサーバを使っているわけですが、僕のデータベースにはレコードは3件しかないのです。これはレンタルサーバのデータベースすべての件数が表示されているのでしょうか?
なんだかSQLを実行するのが怖いので、考えられる原因を教えてください。よろしくお願いします。
プログラムを初めてまだ、数ヶ月しか経ってない初心者なので、みなさんの知恵を貸していただけると幸いです。
No.1ベストアンサー
- 回答日時:
こんにちは。
まず、全然関係ないですが、SELECT文ではCOMMIT不要です。
さて本題ですが、この場合のrowsは何が返るかわかりません。
rowsでレコード数を取り出せるのは下記の場合のみです。
1.doメソッドで実行した場合(条件付き)
2.SELECT以外のSQL。
3.SELECT実行後、すべての行を取り出した後。
ところで、件数取得はCOUNT()じゃダメ?
(^^ゞ
こんにちはtaka451213さん。
ここ数日で、perlやDBを少し学習しました。
その結果、SELECT等の問題については、理解でき、問題も解決しました。色々とありがとうございました。
またどうしてもわからないことがあったら、この場を使って聞きたいと思います。そのときはよろしくお願いします。
親切な対応ありがとうござました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- PHP 【PHP/MySQL】コード上で生成したクエリを基に集計クエリを作りたい 1 2022/07/28 15:06
- PHP クエリObjectをforeachで回す時に、次のレコードへ移動せずに次のレコードを取得したい 2 2022/07/28 15:29
- PHP PHP MySql ページング 2 2022/09/20 06:38
- PHP if(preg_match("/[^0-9]/",$gu_d)){意味を教えてください。 1 2022/05/06 05:37
- その他(プログラミング・Web制作) pythonリストの特定の値を表示htmlで表示できない 2 2022/05/14 05:48
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- Perl RSSにdiv,ul classを付けたいのですがどのようにつけるのかわからないです 2 2022/03/28 01:53
- PHP PostgreSQLからCSV形式でエクスポートする際にカラム内の改行をとる方法 1 2023/02/22 10:05
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
検索の秒数表示について
-
データベースファイル(.db)を開...
-
PL/SQLで@ファイル名が反応しま...
-
SQLServerのselect文でデータ数...
-
sql*loader 数値のロード
-
PL/SQLをWindowsのBATファイル...
-
mySQLのデータベースにhtmlのコ...
-
あるDBから別のDBのテーブルをs...
-
mysqlにおけるホストのパーセン...
-
MYSQL で検索した結果を印刷したい
-
作成したレコードセットのCSV出...
-
DBファイルの中身を直接見れな...
-
MySQLにログインできなくて困っ...
-
同じSQL文で極端に検索が遅くな...
-
バッチファイルではパスワード...
-
そもそも、なぜデータベースを...
-
TVTestのエラーの解決方法を教...
-
ユーザにインフォメーション ス...
-
漢字や平仮名の文字をSQLで実行...
-
本を見ながらPHPを勉強している...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
perlを使ってレコード件数を取...
-
二重に記載されてしまう
-
人口の都道府県別の割合を求め...
-
PHP+MySQL 内部結合(INNER_JOIN...
-
sql文のcount変数について
-
MySQLのデータファイルの位置に...
-
データベースファイル(.db)を開...
-
PL/SQLで@ファイル名が反応しま...
-
あるDBから別のDBのテーブルをs...
-
PL/SQLをWindowsのBATファイル...
-
html上でMySQLにアクセス(Java...
-
sql*loader 数値のロード
-
同じSQL文で極端に検索が遅くな...
-
数字で「そ」と「り」
-
mysqlにおけるホストのパーセン...
-
create databaseがうまくいきま...
-
SQLServerのselect文でデータ数...
-
作成したレコードセットのCSV出...
-
バッチファイルではパスワード...
-
mySQLのデータベースにhtmlのコ...
おすすめ情報