Php/docs/mysqli-stmt.error

提供:Dev Guides
< Php
移動先:案内検索

mysqli_stmt::$error

mysqli_stmt_error

(PHP 5, PHP 7)

mysqli_stmt::$error -- mysqli_stmt_error直近のステートメントのエラー内容を文字列で返す


説明

オブジェクト指向型

string $mysqli_stmt->error;

手続き型

mysqli_stmt_error ( mysqli_stmt $stmt ) : string

直近に実行されたステートメントが 成功あるいは失敗した際のエラーメッセージを文字列で返します。


パラメータ

stmt
手続き型のみ: mysqli_stmt_init() が返すステートメント ID。


返り値

エラーの内容を文字列で返します。エラーが発生しなかった場合は空文字列を返します。


例1 オブジェクト指向型

<?php/* 接続をオープンします */$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* 接続状況をチェックします */ if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}$mysqli->query("CREATE TABLE myCountry LIKE Country");$mysqli->query("INSERT INTO myCountry SELECT * FROM Country");$query = "SELECT Name, Code FROM myCountry ORDER BY Name";if ($stmt = $mysqli->prepare($query)) {    /* テーブルを削除します */    $mysqli->query("DROP TABLE myCountry");    /* クエリを実行します */    $stmt->execute();    printf("Error: %s.\n", $stmt->error);    /* ステートメントを閉じます */    $stmt->close();}/* 接続を閉じます */$mysqli->close();?>

例2 手続き型

<?php/* 接続をオープンします */$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* 接続状況をチェックします */ if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}mysqli_query($link, "CREATE TABLE myCountry LIKE Country");mysqli_query($link, "INSERT INTO myCountry SELECT * FROM Country");$query = "SELECT Name, Code FROM myCountry ORDER BY Name";if ($stmt = mysqli_prepare($link, $query)) {    /* テーブルを削除します */    mysqli_query($link, "DROP TABLE myCountry");    /* クエリを実行します */    mysqli_stmt_execute($stmt);    printf("Error: %s.\n", mysqli_stmt_error($stmt));    /* ステートメントを閉じます */    mysqli_stmt_close($stmt);}/* 接続を閉じます */mysqli_close($link);?>

上の例の出力は以下となります。


Error: Table 'world.myCountry' doesn't exist.

参考