English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial Básico PHP

Tutorial Avançado PHP

PHP & MySQL

Manual de Referência PHP

Uso e exemplo da função PHP mysqli_stmt_sqlstate()

PHP MySQLi Referência Manual

A função mysqli_stmt_sqlstate() retorna o erro SQLSTATE da última operação de instrução

Definição e uso

mysqli_stmt_sqlstate()A função retorna o erro SQLSTATE ocorrido durante a execução da última consulta.

Sintaxe

mysqli_stmt_sqlstate($stmt);

Parâmetro

NúmeroParâmetros e descrições
1

stmt (obrigatório)

Este é um objeto que representa a instrução (pré-preparada).

Valor de retorno

A função PHP mysqli_stmt_sqlstate() retorna um valor de string que representa o erro SQLSTATE ocorrido durante a execução da última consulta. Se não houver erro, a função retorna00000.

Versão do PHP

Esta função foi inicialmente introduzida na versão do PHP5introduzido e pode ser usado em todas as versões mais recentes.

Exemplo online

Aqui está um exemplo de como usarmysqli_stmt_sqlstate()Uso da função (estilo orientado a procedimentos)-

<?php
   $con = mysqli_connect("localhost", "root", "password", "mydb");
   mysqli_query($con, 'CREATE TABLE emp(ID INT, PrimeiroNome VARCHAR(20))");
   print("Criar tabela.....\n");
   $stmt = mysqli_prepare($con, "INSERT INTO emp (ID) VALUES (?)");
   mysqli_stmt_bind_param($stmt, "s", $id);
   $id = 'test';
   //Executar declaração
   mysqli_stmt_execute($stmt);
   //State
   $state = mysqli_stmt_sqlstate($stmt);
   print("estado: ".$state);
   //Fim da declaração
   mysqli_stmt_close($stmt);
   //Fechar conexão
   mysqli_close($con);
?>

Resultados de saída

Criar tabela.....
state: 'HY000'

Exemplo online

No estilo orientado a objetos, a sintaxe da função é$con-> sqlstateAqui está um exemplo de estilo orientado a objetos para esta função-

<?php
   //Conectar
   $con = new mysqli("localhost", "root", "password", "mydb");
   $con -> query("CREATE TABLE myplayers(ID INT, Nome_Primeiro VARCHAR (255), Sobrenome VARCHAR (255), Lugar_Nascimento VARCHAR (255), País VARCHAR (255))");
   print("Criar tabela.....\n");
   $con -> query("INSERT INTO myplayers VALUES (1, 'Sikhar', 'Dhawan', 'Delhi', 'India')");
   print("Inserir registro.....\n");
   $stmt = $con ->prepare("SELECT * FROM myplayers");
   $con ->query("DROP TABLE myplayers");
   //Executar declaração
   $stmt->execute();
   //Estado SQl
   $state = $stmt ->sqlstate;
   print("Estado SQL: ".$state);
   //Fim da declaração
   $stmt->close();
   //Fechar conexão
   $con->close();
?>

Resultados de saída

Criar tabela.....
Inserir registro.....
Estado SQL: 42S02

Exemplo online

Aqui estámysqli_stmt_sqlstate()Outro exemplo de função-

<?php
   $con = mysqli_connect("localhost", "root", "password", "mydb");
   mysqli_query($con, 'CREATE TABLE emp(ID INT, PrimeiroNome VARCHAR(20), Sobrenome VARCHAR(5), DataDeNascimento VARCHAR(255), Salário INT)");
   print("Criar tabela.....\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;
   //Executar declaração
   mysqli_stmt_execute($stmt);
   //Avisos
   $state = mysqli_stmt_sqlstate($stmt);
   print("estado: ".$state);
   //Fim da declaração
   mysqli_stmt_close($stmt);
   //Fechar conexão
   mysqli_close($con);
?>

Resultados de saída

Criar tabela.....
estado: 22001

PHP MySQLi Referência Manual