( ! ) Fatal error: Uncaught PDOException: SQLSTATE[HY093]: Invalid parameter number: parameter was not defined

エラーメッセージFatal error

目次一覧

 状態:-  閲覧数:1,866  投稿日:2020-05-13  更新日:2022-12-01  
エラーメッセージ / エラー原因 / 遭遇例 1

遭遇例 2

遭遇例 3


エラーメッセージ / エラー原因 / 遭遇例 1

 閲覧数:551 投稿日:2020-05-13 更新日:2022-08-25 

エラーメッセージ


無効なパラメータ番号:パラメータが定義されていない
( ! ) Fatal error: Uncaught PDOException: SQLSTATE[HY093]: Invalid parameter number: parameter was not defined in

エラー原因


パラメータがおかしい。
正常に渡せていない


遭遇例 1


エラーメッセージ
( ! ) Fatal error: Uncaught PDOException: SQLSTATE[HY093]: Invalid parameter number: parameter was not defined in /var/www/xxxx/core/DbRepository.php on line 42
( ! ) PDOException: SQLSTATE[HY093]: Invalid parameter number: parameter was not defined in /var/www/xxxx/core/DbRepository.php on line 42

エラー発生するコード
  public function update_update_datetime($topicId)
{
   $todayDateTime = new DateTime();
   $sql = "UPDATE topic
   SET update_datetime=:updateDatetime
   WHERE id=:topicId";
   $stmt = $this->execute($sql, array(
     ':updateDatetime'    =>  $todayDateTime->format('Y-m-d H:i:s'),
     ':topicId '    => $topicId
   ));
 }


修正例
修正前。末尾に余計な空白がある。
':topicId '


修正後
':topicId'



受け取った変数を反映させた最終SQLを確認不可なので苦労した

遭遇例 2

 閲覧数:240 投稿日:2022-08-25 更新日:2022-08-25 

遭遇例 2


エラーメッセージ
( ! ) Fatal error: Uncaught PDOException: SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens in /XXX/core/DbRepository.php on line 42

エラー発生するコード
public function insertImgByTagId($tagId,$filename,$ext)
{
 $sql = "UPDATE tag
          SET filename=:filename,ext=: ext
           WHERE tag_id=:tag_id";

 $stmt = $this->execute($sql, array(
     ':tag_id'    => $tagId,
     ':filename'       => $filename,
     ':ext'       => $ext,
 ));
}


デバッグ表示したSQL文
余計な空白
UPDATE tag SET filename=:filename,ext=: ext WHERE tag_id=:tag_id

修正例
修正前。「:」と「ext」の間に、余計な空白がある。
UPDATE tag
                SET filename=:filename,ext=: ext
                 WHERE tag_id=:tag_id";


修正後
UPDATE tag
                SET filename=:filename,ext=:ext
                 WHERE tag_id=:tag_id";


遭遇例 3

 閲覧数:200 投稿日:2022-12-01 更新日:2022-12-01 

遭遇例 3


エラーメッセージ
( ! ) Fatal error: Uncaught PDOException: SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens

エラー発生するコード
$sql = "UPDATE tag SET tag_zip:tag_zip, tag_description=:tag_description WHERE tag_id=:tag_id";

修正例
修正前。「=」が抜けている。
tag_zip:tag_zip, 


修正後
tag_zip=:tag_zip, 



"Callback URL not approved for this client application. Approved callback URLs can be adjusted in your application settings"

( ! ) Fatal error: Uncaught Abraham\TwitterOAuth\TwitterOAuthException: {"errors":[{"code":32,"message":"Could not authenticate you."}]}

コメント投稿(ログインが必要)



類似度ページランキング
順位 ページタイトル抜粋
1 ( ! ) Fatal error: Uncaught PDOException: SQLSTATE[HY093]: Invalid parameter number: parameter was not defined 41
2 Fatal error: Uncaught PDOException: SQLSTATE[HY000] [2002] Connection refused 37
3 ( ! ) Fatal error: Uncaught PDOException: SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens 35
4 ( ! ) Fatal error: Uncaught PDOException: SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'カラム名' cannot be null 33
5 Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[23000]: Integrity constraint violation 33
6 ( ! ) Fatal error: Uncaught PDOException: SQLSTATE[22001]: String data, right truncated: 1406 Data too long for column 32
7 ( ! ) Fatal error: Uncaught PDOException: SQLSTATE[22001]: String data, right truncated: 1406 Data too long for column 32
8 Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000]: General error: 1030 Got error 139 from storage engine' 31
9 ( ! ) Fatal error: Uncaught Abraham\TwitterOAuth\TwitterOAuthException: timed out before SSL handshake 31
10 ( ! ) Fatal error: Uncaught Abraham\TwitterOAuth\TwitterOAuthException 31
11 ( ! ) Warning: Declaration of xxxx should be compatible with 31
12 creating database ERROR!!: exception 'PDOException' with message 'SQLSTATE[HY000]: General error: 1 table tally already exists' 30
13 Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000]: General error: 23 Out of resources when opening file '/tmp/#sql_2dd6_0.MYI' (Errcode: 24)' 29
14 Warning: PDO::query(): LOAD DATA LOCAL INFILE forbidden 29
15 Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[28000] [1045] Access denied for user 'データベースユーザー名'@'localhost' (using password: YES)' 29
16 Parse error: syntax error, unexpected 'public' (T_PUBLIC) 29
17 A database error has occoured. SQLSTATE[HY000]: General error: 14 unable to open database file 28
18 Parse error: syntax error, unexpected T_INCLUDE, expecting T_FUNCTION 28
19 ( ! ) Fatal error: Uncaught Abraham\TwitterOAuth\TwitterOAuthException: 現在この機能は一時的にご利用いただけません 28
20 Mailer Error: SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting 27
2024/7/27 22:56 更新
週間人気ページランキング / 7-20 → 7-26
順位 ページタイトル抜粋 アクセス数
1 Parse error: syntax error, unexpected 'public' (T_PUBLIC) | Parse error(エラーメッセージ) 6
2 ブラウザを閉じたらセッションデータはどうなるの? | セッション 5
3 コード例 … 「例外処理」はネストすることができる 4
4 Fatal error: Access level to ▲::$△ must be protected (as in class ●) or weaker | Fatal error(エラーメッセージ) 3
4 PHPで定数を定義する方法は2種類ある / 配列定数の定義 3
4 Parse error: syntax error, unexpected 'new' (T_NEW) | Parse error(エラーメッセージ) 3
4 ブラウザを閉じたらセッションデータはどうなるの? | セッション 3
4 curl で Cookie を使用する 3
4 ( ! ) Deprecated: implode(): Passing glue string after array is deprecated. Swap the parameters in ★★★ headless-chromium-php/vendor/wrench/wrench/lib/Wrench/Protocol/Protocol.php | エラーメッセージ 3
4 or(||) | 演算子 3
5 Composer | 依存関係マネージャ 2
5 グローバル変数 | 変数 2
5 new clone違い | 演算子 2
5 php-devel とは? 2
5 session_start() | セッション 2
5 Fatal error: Uncaught Error: Class 'Mecab_Tagger' not found in /var/www/★★.php:☆☆ | Fatal error(エラーメッセージ) 2
5 例外処理 | 制御構造 2
5 ( ! ) Fatal error: Uncaught PDOException: SQLSTATE[HY093]: Invalid parameter number: parameter was not defined | Fatal error(エラーメッセージ) 2
5 関数 2
6 セッション単位 | セッション 1
2024/7/27 1:01 更新