mysqli_stmt::$sqlstate
(mysqli_stmt_sqlstate)以前のステートメント操作からsqlStateエラーを返します
mysqli_stmt :: $ sqlstate()関数は、最後のステートメント実行のSQLステータスコードを取得するために使用されます。
使用法:
string mysqli_stmt::$sqlstate();
パラメーター:この関数にはパラメーターがありません。
戻り値:この関数は、SQLステータスコードを表す文字列を返します。
例:
// 创建数据库连接$mysqli = new mysqli("localhost", "username", "password", "database"); // 准备SQL语句$stmt = $mysqli->prepare("SELECT * FROM users WHERE age > ?"); // 绑定参数$age = 18; $stmt->bind_param("i", $age); // 执行查询$stmt->execute(); // 获取SQL状态码$sqlstate = $stmt->sqlstate(); if ($sqlstate == '00000') { echo "查询成功!"; } else { echo "查询失败,错误码:" . $sqlstate; } // 关闭语句和数据库连接$stmt->close(); $mysqli->close();
上記の例では、最初にデータベース接続を作成し、prepare()メソッドを使用してパラメーターを使用してSQLステートメントを準備します。次に、bind_param()メソッドを使用してパラメーターをバインドし、クエリを実行します。最後に、sqlState()メソッドを使用して、最後のクエリのSQLステータスコードを取得し、異なるステータスコードに従って異なるメッセージを出力します。
SQLステータスコードは、異なるSQL実行ステータスを表すために数字から始まる5桁の文字列であることに注意する必要があります。この例では、ステータスコードが「00000」であるかどうかを判断し、クエリが成功していることを示します。ステータスコードが「00000」でない場合、クエリが失敗し、特定のステータスコードに従ってエラー処理を実行できることを意味します。