Para insertar datos en una base de datos SQLite, use el INSERT
declaración.
Cuando usa esta declaración, especifica en qué columnas insertar datos, así como los datos que se insertarán. El INSERT
instrucción agrega una nueva fila a la tabla con los datos especificados.
Agreguemos una fila de datos a nuestros Artistas mesa.
Ejecute la siguiente instrucción:
INSERT INTO Artists (ArtistName) VALUES ('Joe Satriani');
Verifique que los datos hayan sido insertados
Puede ejecutar un SELECT
rápido declaración para verificar que los datos fueron insertados.
Más sobre SELECT
declaración más tarde, pero por ahora, ejecute la siguiente declaración:
SELECT * FROM Artists;
Esto debería dar como resultado que se muestre lo siguiente:
sqlite> SELECT * FROM Artists; 1|Joe Satriani
Un atajo
Hay otra forma de escribir SELECT
declaración que no usa tanto código.
Simplemente puede omitir los nombres de las columnas de la declaración y los campos seguirán llenándose.
Sin embargo, este método requiere que proporcione un valor para todas las columnas.
Así:
INSERT INTO Artists VALUES (NULL, 'Steve Vai');
Ahora, ejecutando el mismo SELECT
declaración devolverá lo siguiente:
sqlite> SELECT * FROM Artists; 1|Joe Satriani 2|Steve Vai
Acerca del campo de clave principal
A estas alturas, es posible que haya notado que
ArtistId
el campo obtiene su valor automáticamente. En nuestro primer INSERT
, no proporcionamos un valor para esa columna. En nuestro segundo INSERT
proporcionamos NULL
como el valor.
Esto sucede porque la columna es de tipo INTEGER PRIMARY KEY
. Cuando a una columna se le ha asignado INTEGER PRIMARY KEY
, este es un alias para ROWID
. Con un ROWID
, si INSERT
no proporciona un valor instrucción, SQLite inserta automáticamente su propio entero en ese campo.
El valor de ROWID
el entero suele ser uno mayor que el mayor ROWID
actualmente en uso. En una tabla vacía, este valor comenzará en 1
.
Entonces, el resultado final es que, si no proporciona un valor para ese campo, SQLite lo hará.
Adición de varias filas
Puede usar tantos INSERT
declaraciones a medida que necesite agregar más datos.
INSERT INTO Artists VALUES (NULL, 'The Tea Party'); INSERT INTO Artists VALUES (NULL, 'Noiseworks'); INSERT INTO Artists VALUES (NULL, 'Wayne Jury'); INSERT INTO Artists VALUES (NULL, 'Mr Percival'); INSERT INTO Artists VALUES (NULL, 'Iron Maiden'); INSERT INTO Artists VALUES (NULL, 'Atmasphere'); INSERT INTO Artists VALUES (NULL, 'Ian Moss'); INSERT INTO Artists VALUES (NULL, 'Magnum'); INSERT INTO Artists VALUES (NULL, 'Strapping Young Lad'); INSERT INTO Artists VALUES (NULL, 'Slayer'); INSERT INTO Artists VALUES (NULL, 'Primus'); INSERT INTO Artists VALUES (NULL, 'Pat Metheny'); INSERT INTO Artists VALUES (NULL, 'Frank Gambale'); INSERT INTO Artists VALUES (NULL, 'Frank Zappa'); INSERT INTO Artists VALUES (NULL, 'The Wiggles');
Y ahora nuestro SELECT
declaración devolverá lo siguiente:
sqlite> SELECT * FROM Artists; 1|Joe Satriani 2|Steve Vai 3|The Tea Party 4|Noiseworks 5|Wayne Jury 6|Mr Percival 7|Iron Maiden 8|Atmasphere 9|Ian Moss 10|Magnum 11|Strapping Young Lad 12|Slayer 13|Primus 14|Pat Metheny 15|Frank Gambale 16|Frank Zappa 17|The Wiggles
A continuación, veremos más de cerca la selección de datos de nuestra base de datos.