SQL INSERT INTO Instrucción
La instrucción SQL INSERT INTO
La instrucción INSERT INTO
se utiliza para insertar nuevos registros en una tabla.
INSERT INTO Sintaxis
Es posible escribir la instrucción INSERT INTO
de dos maneras:
1. Especifique tanto los nombres de las columnas como los valores que se insertarán:
INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...);
2. Si agrega valores para todas las columnas de la tabla, no necesita especificar los nombres de las columnas en la consulta SQL. Sin embargo, asegúrese de que los valores estén en el mismo orden que las columnas de la tabla. En este caso, la sintaxis de INSERT INTO
sería la siguiente:
INSERT INTO table_name
VALUES (value1, value2, value3, ...);
Base de datos de demostración
A continuación se muestra una selección de la tabla "Customers" de la base de datos de muestra de Northwind:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
89 | White Clover Markets | Karl Jablonski | 305 - 14th Ave. S. Suite 3B | Seattle | 98128 | USA |
90 |
Wilman Kala | Matti Karttunen | Keskuskatu 45 | Helsinki | 21240 | Finland |
91 |
Wolski | Zbyszek | ul. Filtrowa 68 | Walla | 01-012 | Poland |
INSERT INTO Ejemplo
La siguiente declaración SQL inserta un nuevo registro en la tabla "Customers":
Ejemplo
INSERT INTO Customers (CustomerName, ContactName, Address, City, PostalCode, Country)
VALUES ('Cardinal', 'Tom B. Erichsen', 'Skagen 21', 'Stavanger', '4006', 'Norway');
Try it Yourself »
La selección de la tabla "Customers" ahora se verá así:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
89 | White Clover Markets | Karl Jablonski | 305 - 14th Ave. S. Suite 3B | Seattle | 98128 | USA |
90 |
Wilman Kala | Matti Karttunen | Keskuskatu 45 | Helsinki | 21240 | Finland |
91 |
Wolski | Zbyszek | ul. Filtrowa 68 | Walla | 01-012 | Poland |
92 | Cardinal | Tom B. Erichsen | Skagen 21 | Stavanger | 4006 | Norway |
¿Observaste que no insertamos ningún número en el campo CustomerID?
La columna CustomerID es un campo de autoincremento y se generará automáticamente cuando se inserte un nuevo registro en la tabla.
Insertar datos sólo en las columnas especificadas
También es posible insertar datos únicamente en columnas específicas.
La siguiente declaración SQL insertará un nuevo registro, pero solo insertará datos en las columnas "CustomerName", "City" y "Country" (CustomerID se actualizará automáticamente):
Ejemplo
INSERT INTO Customers (CustomerName, City, Country)
VALUES ('Cardinal', 'Stavanger', 'Norway');
Try it Yourself »
La selección de la tabla "Customers" ahora se verá así:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
89 | White Clover Markets | Karl Jablonski | 305 - 14th Ave. S. Suite 3B | Seattle | 98128 | USA |
90 |
Wilman Kala | Matti Karttunen | Keskuskatu 45 | Helsinki | 21240 | Finland |
91 |
Wolski | Zbyszek | ul. Filtrowa 68 | Walla | 01-012 | Poland |
92 | Cardinal | null | null | Stavanger | null | Norway |
Insertar varias filas
También es posible insertar varias filas en una sola declaración.
Para insertar varias filas de datos, utilizamos la misma instrucción INSERT INTO
, pero con varios valores:
Ejemplo
INSERT INTO Customers (CustomerName, ContactName, Address, City, PostalCode, Country)
VALUES
('Cardinal', 'Tom B. Erichsen', 'Skagen 21', 'Stavanger', '4006', 'Norway'),
('Greasy Burger', 'Per Olsen', 'Gateveien 15', 'Sandnes', '4306', 'Norway'),
('Tasty Tee', 'Finn Egan', 'Streetroad 19B', 'Liverpool', 'L1 0AA', 'UK');
Asegúrese de separar cada conjunto de valores con una coma ,
.
La selección de la tabla "Customers" ahora se verá así:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
89 | White Clover Markets | Karl Jablonski | 305 - 14th Ave. S. Suite 3B | Seattle | 98128 | USA |
90 |
Wilman Kala | Matti Karttunen | Keskuskatu 45 | Helsinki | 21240 | Finland |
91 |
Wolski | Zbyszek | ul. Filtrowa 68 | Walla | 01-012 | Poland |
92 | Cardinal | Tom B. Erichsen | Skagen 21 | Stavanger | 4006 | Norway |
93 | Greasy Burger | Per Olsen | Gateveien 15 | Sandnes | 4306 | Norway |
94 | Tasty Tee | Finn Egan | Streetroad 19B | Liverpool | L1 0AA | UK |
W3Schools SQL Videotutorial. INSERT INTO Instrucción
Este vídeo es una introducción a la Instrucción INSERT INTO en SQL.
¡Parte de una serie de videotutoriales para aprender SQL para principiantes!