mysqli::$sqlstate
(PHP 5, PHP 7, PHP 8)
mysqli::$sqlstate -- mysqli_sqlstate — 이전 MySQL 작업에서 SQLSTATE 오류를 반환합니다.
설명
객체 지향 스타일
string $mysqli->sqlstate;
절차적 스타일
mysqli_sqlstate(mysqli $mysql
): string
마지막 오류에 대한 SQLSTATE 오류 코드가 포함된 문자열을 반환합니다. 오류 코드는 5자로 구성됩니다. '00000
'은 오류가 없음을 의미합니다. 값은 ANSI SQL 및 ODBC에 의해 지정됩니다. 가능한 값 목록은 » http://dev.mysql.com/doc/mysql/en/error-handling.html을 참조하세요.
메모: 모든 MySQL 오류가 아직 SQLSTATE에 매핑되는 것은 아닙니다. 값 HY000
(일반 오류)은 매핑되지 않은 오류에 사용됩니다.
매개변수
mysql
- 절차적 스타일 전용: mysqli_connect() 또는 mysqli_init()에 의해 반환된 mysqli 객체
반환 값
마지막 오류에 대한 SQLSTATE 오류 코드가 포함된 문자열을 반환합니다. 오류 코드는 5자로 구성됩니다. '00000
'은 오류가 없음을 의미합니다.
Examples
예제 #1 $mysqli->sqlstate 예제
객체 지향 스타일
<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
/* Table City already exists, so we should get an error */
if (!$mysqli->query("CREATE TABLE City (ID INT, Name VARCHAR(30))")) {
printf("Error - SQLSTATE %s.\n", $mysqli->sqlstate);
}
$mysqli->close();
?>
절차적 스타일
<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
/* Table City already exists, so we should get an error */
if (!mysqli_query($link, "CREATE TABLE City (ID INT, Name VARCHAR(30))")) {
printf("Error - SQLSTATE %s.\n", mysqli_sqlstate($link));
}
mysqli_close($link);
?>
위의 예는 다음을 출력합니다.
Error - SQLSTATE 42S01.
기타
- mysqli_errno() - 가장 최근의 함수 호출에 대한 오류 코드를 반환합니다.
- mysqli_error() - 마지막 오류에 대한 문자열 설명을 반환합니다.