PHP MySQL Insertar datos
Insertar datos en MySQL usando MySQLi y PDO
Después de crear la base de datos y la tabla, podemos agregar datos a la tabla.
Las siguientes son algunas reglas de sintaxis:
- Las consultas SQL en PHP deben usar comillas
- Los valores de cadena en las consultas SQL deben ir entre comillas
- Los valores numéricos no necesitan comillas
- El valor NULL no necesita comillas
La declaración INSERT INTO se usa generalmente para agregar nuevos registros a una tabla de MySQL:
INSERT INTO table_name (column1, column2, column3,...) VALUES (value1, value2, value3,...)
Para aprender más sobre SQL, consulta nuestroTutorial de SQL。
En los capítulos anteriores hemos creado la tabla "MyGuests" con los campos: "id", "firstname", "lastname", "email" y "reg_date". Ahora, comencemos a llenar la tabla con datos.
![]() |
Nota:Si una columna tiene AUTO_INCREMENT (como la columna "id") o TIMESTAMP (como la columna "reg_date"), no necesitamos especificar el valor en la consulta SQL; MySQL agregará el valor automáticamente para esa columna. |
|---|
El siguiente ejemplo agrega un nuevo registro a la tabla "MyGuests":
Ejemplo (MySQLi - Orientado a objetos)
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
//Crear conexión
$conn = new mysqli($servername, $username, $password, $dbname);
//Verificar conexión
if ($conn->connect_error) {
die("Conexión fallida:" . $conn->connect_error);
}
$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('John', 'Doe', '[email protected]')";
if ($conn->query($sql) === TRUE) {
echo "Nuevo registro insertado correctamente";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
Ejemplo (MySQLi - Orientado a procedimientos)
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
//Crear conexión
$conn = mysqli_connect($servername, $username, $password, $dbname);
//Verificar conexión
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('John', 'Doe', '[email protected]')";
if (mysqli_query($conn, $sql)) {
echo "Nuevo registro insertado correctamente";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}
mysqli_close($conn);
Ejemplo (PDO)
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDBPDO";
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
//Configurar el modo de error de PDO para lanzar excepciones
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('John', 'Doe', '[email protected]')";
//Usar exec(), no devuelve ningún resultado
$conn->exec($sql);
echo "Nuevo registro insertado correctamente";
}
catch(PDOException $e)
{
echo $sql . "<br>" . $e->getMessage();
}
$conn = null;
