English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
mysqli_stmt_sqlstate() функция возвращает SQLSTATE ошибку из последней операции со语句ми.
mysqli_stmt_sqlstate()Функция возвращает SQLSTATE ошибку, которая произошла во время выполнения последнего запроса.
mysqli_stmt_sqlstate($stmt);
Номер | Параметры и описание |
---|---|
1 | stmt(обязателен) Это объект представленияstatements (подготовленный). |
PHP mysqli_stmt_sqlstate() функция возвращает строковое значение, которое представляет собой SQLSTATE ошибку, которая произошла во время выполнения последнего запроса. Если нет ошибок, функция возвращает00000.
Эта функция была введена в PHP версии 5 и может использоваться во всех более поздних версиях.
Ниже приведен пример:mysqli_stmt_sqlstate()Использование функции (стиль面向 процессов)-
<?php $con = mysqli_connect("localhost", "root", "password", "mydb"); mysqli_query($con, "CREATE TABLE emp(ID INT, FirstName VARCHAR(20))"); print("Создание таблицы.....\n"); $stmt = mysqli_prepare($con, "INSERT INTO emp (ID) VALUES (?)"); mysqli_stmt_bind_param($stmt, "s", $id); $id = 'test'; //Выполнение инструкции mysqli_stmt_execute($stmt); //State $state = mysqli_stmt_sqlstate($stmt); print("state: ".$state); //Конец инструкции mysqli_stmt_close($stmt); //Закрытие соединения mysqli_close($con); ?>
Результат вывода
Создание таблицы..... state: HY000
В стилистике面向 объектов, грамматика этой функции такая:$con-> sqlstate. Вот пример функции в стилистике面向对象的 программирования-
<?php //Установление соединения $con = new mysqli("localhost", "root", "password", "mydb"); $con -> query("CREATE TABLE myplayers(ID INT, First_Name VARCHAR(255), Last_Name VARCHAR(255), Place_Of_Birth VARCHAR(255), Country VARCHAR(255))"); print("Создание таблицы.....\n"); $con -> query("INSERT INTO myplayers values(1, 'Sikhar', 'Dhawan', 'Delhi', 'India')"); print("Ввод записи.....\n"); $stmt = $con -> prepare("SELECT * FROM myplayers"); $con ->query("DROP TABLE myplayers"); //Выполнение инструкции $stmt->execute(); //SQL State $state = $stmt ->sqlstate; print("SQL State: ".$state); //Конец инструкции $stmt->close(); //Закрытие соединения $con->close(); ?>
Результат вывода
Создание таблицы..... Вставка записи..... SQL State: 42S02
Вотmysqli_stmt_sqlstate()Ещё один пример функции-
<?php $con = mysqli_connect("localhost", "root", "password", "mydb"); mysqli_query($con, "CREATE TABLE emp(ID INT, FirstName VARCHAR(20), LastName VARCHAR(5), DateOfBirth VARCHAR(255), Salary INT)"); print("Создание таблицы.....\n"); $stmt = mysqli_prepare($con, "INSERT INTO emp values(?, ?, ?, ?, ?"); mysqli_stmt_bind_param($stmt, "isssi", $id, $fname, $lname, $pob, $country); $id = 1; $fname = 'Swetha'; $lname = 'Yellapragada'; $dob = DATE('1981-12-05'); $country = 2366; //Выполнение инструкции mysqli_stmt_execute($stmt); //Предупреждения $state = mysqli_stmt_sqlstate($stmt); print("state: ".$state); //Конец инструкции mysqli_stmt_close($stmt); //Закрытие соединения mysqli_close($con); ?>
Результат вывода
Создание таблицы..... state: 22001