[解決済み] PDO Error - PDOException' with message 'SQLSTATE[HY000]: 一般的なエラー' [重複]
2022-02-11 06:28:10
質問
このエラーが発生します。
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000]: General error' in ...
...このコードをPDOで実行すると必ず。
//Select data from the topic.
$s = $dbh->prepare("SELECT * FROM forum_topics WHERE forum_id=:forum_cat_id AND topic_id=:topicid");
$s->bindParam(':forum_cat_id', $forum_cat_id);
$s->bindParam(':topicid', $topicid);
$s->execute();
$f = $s->fetch();
$s = $dbh->prepare("UPDATE forum_cats
SET
forum_last_postid = :last_post_id, forum_last_posttime = :time,
forum_last_userid = :userid, forum_last_username = :username,
forum_posts=forum_posts+1
WHERE forum_id = :forum_cat_id");
$s->bindParam(':last_post_id', $last_post_id);
$s->bindParam(':time', $time);
$s->bindParam(':userid', $userid);
$s->bindParam(':username', $userdata['username']);
$s->bindParam(':forum_cat_id', $forum_cat_id);
try {
$s->execute();
}
catch(PDOException $e) {
die($e->getMessage());
}
if (count($s->fetchAll()) == 0) {
return 3;
}
なぜこのようなことが起こるのか、まったくわかりません。クエリをチェックしましたが、エラーは見つかりませんでした。
どうすればいいですか?
このようなことが起こります。
-
UPDATEクエリをフェッチしようとしています。UPDATE クエリは値を返さないので、それはできません。クエリによって影響を受けた行の数を知りたい場合は、代わりに rowCount() 関数を使用します。すべての DB ドライバが、影響を受けた行を提供するわけではないことに注意してください。
-
宣言されていない変数を使用しています(少なくともここに投稿されたコードでは)。これはこの特定のエラーの原因ではありませんが、他のエラーを発生させる可能性があります。
-
データベースから選択したデータが使用されていません
また、PDO の操作はすべて try ブロック内で行うことを推奨します。そうしないと、処理されない例外が発生する可能性があります。
関連
-
[解決済み】PDOException SQLSTATE[HY000] [2002] そのようなファイルまたはディレクトリがありません。
-
[解決済み] 整形されていない数値が発生しました。
-
[解決済み】SQLSTATE[42000]: 構文エラーまたはアクセス違反が発生しました。1064 SQL 構文にエラーがあります - PHP - PDO [重複]。
-
[解決済み】XAMPPのphpMyAdminで「設定にあるcontroluserの接続に失敗しました。
-
[解決済み] SQLSTATE[HY093]: 無効なパラメータ番号: バインドされた変数の数が102行目のトークンの数と一致しない [終了]
-
[解決済み】XAMPPエラー: www.example.com:443:0 サーバー証明書に、サーバー名と一致するIDが含まれていません。
-
[解決済み】「Fatal error: Class 'MySQLi' not found "を解決するには?
-
[解決済み】未定義のメソッド mysqli_stmt::get_result を呼び出す。
-
[解決済み】count()パラメータは配列かlaravelのcountableを実装したオブジェクトでなければならない
-
MacでPHPを実行した際に、メモリサイズが134217728バイトも消費される問題の解決方法について
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】XAMPPポート80をPID 4の「Unable to open process」が使用中 [重複] XAMPPポート80をPID 4の「Unable to open process」が使用中。]
-
[解決済み】Fatal error: 未定義の関数 sqlsrv_connect() を呼び出した。
-
[解決済み】警告。数値でない値に遭遇しました
-
[解決済み】/var/www/htmlとは何ですか?[クローズド]
-
[解決済み] Uncaught Error: 未定義の関数 mysql_escape_string() の呼び出し。
-
[解決済み] Forbidden :このサーバーの /phpmyadmin にアクセスする権限がありません。
-
[解決済み] オートロードとは何ですか; spl_autoload、__autoload、spl_autoload_register はどのように使うのですか?
-
[解決済み] mysql_field_nameを新しいmysqliに変更します。
-
[解決済み] $_SERVER['DOCUMENT_ROOT'] と $_SERVER['HTTP_HOST'] の違いについて
-
[解決済み] PDOエラーです。" sqlstate[hy000]: 一般的なエラー " データベースを更新するとき