MySQLi preparó informes de errores de declaraciones [duplicado]

Esta pregunta ya tiene una respuesta aquí:

Cómo obtener información de error de MySQLi en diferentes entornos 2 respuestas

Estoy tratando de entender MySQli y estoy confundido por el informe de errores. Estoy usando el valor de retorno de la declaración 'preparar' de MySQLi para detectar errores al ejecutar SQL, así:

$stmt_test =  $mysqliDatabaseConnection->stmt_init();
if($stmt_test->prepare("INSERT INTO testtable VALUES (23,44,56)"))
{
 $stmt_test->execute();
 $stmt_test->close();
}
else echo("Statement failed: ". $stmt_test->error . "<br>");

Pero, ¿el valor de retorno de la instrucción de preparación solo detecta si hay un error en la preparación de la instrucción SQL y no detecta errores de ejecución? Si es así, debería cambiar mi línea de ejecución para marcar errores así:

if($stmt_test->execute()) $errorflag=true;

Y luego, solo para estar seguro, también debería hacer lo siguiente después de que se haya ejecutado la declaración:

if($stmt_test->errno) {$errorflag=true;}

... ¿O estaba bien para empezar y el valor de retorno en la instrucción MySQLi prepare 'captura todos los errores asociados con la ejecución completa de la consulta que define?

Gracias c

Respuestas a la pregunta(3)

Su respuesta a la pregunta