sql >> Database >  >> RDS >> SQLite

SQLite invoegen

Samenvatting :in deze tutorial leer je hoe je SQLite INSERT . gebruikt statement om nieuwe rijen in een tabel in te voegen.

Om gegevens in een tabel in te voegen, gebruikt u de INSERT uitspraak. SQLite biedt verschillende vormen van de INSERT instructies waarmee u een enkele rij, meerdere rijen en standaardwaarden in een tabel kunt invoegen.

Bovendien kunt u een rij in een tabel invoegen met behulp van gegevens die worden geleverd door een SELECT verklaring.

SQLite INSERT – een enkele rij invoegen in een tabel

Om een ​​enkele rij in een tabel in te voegen, gebruikt u de volgende vorm van de INSERT verklaring:

INSERT INTO table (column1,column2 ,..)
VALUES( value1,	value2 ,...);Code language: SQL (Structured Query Language) (sql)

Laten we eens kijken naar de INSERT verklaring in meer detail:

  • Geef eerst de naam op van de tabel waarin u gegevens wilt invoegen na de INSERT INTO trefwoorden.
  • Ten tweede, voeg een door komma's gescheiden lijst met kolommen toe na de tabelnaam. De kolomlijst is optioneel. Het is echter een goede gewoonte om de kolomlijst achter de tabelnaam op te nemen.
  • Ten derde, voeg een door komma's gescheiden lijst met waarden toe na de VALUES trefwoord. Als u de kolomlijst weglaat, moet u waarden opgeven voor alle kolommen in de invoerlijst. Het aantal waarden in de lijst met waarden moet gelijk zijn aan het aantal kolommen in de lijst met kolommen.

We gebruiken de artists tabel in de voorbeelddatabase voor de demonstratie.

De volgende instructie voegt een nieuwe rij toe aan de artists tafel:

INSERT INTO artists (name)
VALUES('Bud Powell');Code language: SQL (Structured Query Language) (sql)

Probeer het

Omdat de ArtistId column een auto-increment kolom is, kunt u deze negeren in de instructie. SQLite genereert automatisch een opeenvolgend geheel getal om in te voegen in de ArtistId kolom.

U kunt de invoegbewerking verifiëren met behulp van de volgende SELECT verklaring:

SELECT
	ArtistId,
	Name
FROM
	Artists
ORDER BY
	ArtistId DESC
LIMIT 1;Code language: SQL (Structured Query Language) (sql)

Probeer het

Zoals je ziet, hebben we een nieuwe rij in de artists tafel.

SQLite INSERT – Meerdere rijen in een tabel invoegen

Om meerdere rijen in een tabel in te voegen, gebruikt u de volgende vorm van de INSERT verklaring:

INSERT INTO table1 (column1,column2 ,..)
VALUES 
   (value1,value2 ,...),
   (value1,value2 ,...),
    ...
   (value1,value2 ,...);
Code language: SQL (Structured Query Language) (sql)

Elke lijst met waarden na de VALUES clausule is een rij die in de tabel wordt ingevoegd.

In het volgende voorbeeld worden drie rijen ingevoegd in de artists tafel:

INSERT INTO artists (name)
VALUES
	("Buddy Rich"),
	("Candido"),
	("Charlie Byrd");Code language: SQL (Structured Query Language) (sql)

Probeer het

SQLite heeft een bericht uitgegeven:

Row Affected: 3

U kunt het resultaat verifiëren met de volgende verklaring:

SELECT
	ArtistId,
	Name
FROM
	artists
ORDER BY
	ArtistId DESC
LIMIT 3;Code language: SQL (Structured Query Language) (sql)

Probeer het

SQLite INSERT – Standaardwaarden invoegen

Wanneer u een nieuwe tabel maakt met de CREATE TABLE statement, kunt u standaardwaarden voor kolommen opgeven, of een NULL als er geen standaardwaarde is opgegeven.

De derde vorm van de INSERT statement is INSERT DEFAULT VALUES , waarmee een nieuwe rij in een tabel wordt ingevoegd met behulp van de standaardwaarden die zijn opgegeven in de kolomdefinitie of NULL als de standaardwaarde niet beschikbaar is en de kolom geen NOT NULL . heeft beperking.

De volgende instructie voegt bijvoorbeeld een nieuwe rij in de artists tabel met behulp van INSERT DEFAULT VALUES :

INSERT INTO artists DEFAULT VALUES;Code language: SQL (Structured Query Language) (sql)

Probeer het

Om de invoeging te verifiëren, gebruikt u de volgende verklaring:

SELECT
	ArtistId,
	Name
FROM
	artists
ORDER BY
	ArtistId DESC;Code language: SQL (Structured Query Language) (sql)

Probeer het

De standaardwaarde van de ArtistId kolom is het volgende opeenvolgende gehele getal. Echter, de name kolom heeft geen standaardwaarde, daarom is de INSERT DEFAULT VALUES instructie voegt NULL in erin.

SQLite INSERT – Nieuwe rijen invoegen met gegevens geleverd door een SELECT verklaring

Stel dat u een back-up wilt maken van de artists tabel, kunt u deze stappen volgen:

Maak eerst een nieuwe tabel met de naam artists_backup als volgt:

CREATE TABLE artists_backup(
   ArtistId INTEGER PRIMARY KEY AUTOINCREMENT,
   Name NVARCHAR
);Code language: SQL (Structured Query Language) (sql)

Probeer het

Gegevens invoegen in de artists_backup tabel met de gegevens van de artists tabel, gebruik je de INSERT INTO SELECT verklaring als volgt:

INSERT INTO artists_backup 
SELECT ArtistId, Name
FROM artists;Code language: SQL (Structured Query Language) (sql)

Probeer het

Als u gegevens opvraagt ​​van de artists_backup tabel ziet u alle gegevens in de artists tafel.

SELECT * FROM artists_backup;Code language: SQL (Structured Query Language) (sql)

Probeer het

In deze tutorial heb je geleerd hoe je verschillende vormen van SQLite INSERT . kunt gebruiken instructie die nieuwe rijen in een tabel invoegt.

Referenties

  • https://www.sqlite.org/lang_insert.html – SQLite INSERT-instructie

  1. Verschil tussen Oracle jdbc-stuurprogrammaklassen?

  2. Bijna nul downtime Geautomatiseerde upgrades van PostgreSQL-clusters in de cloud (deel I)

  3. Hybride cloudreplicatie voor MySQL voor hoge beschikbaarheid

  4. SET DATEFIRST - Stel de eerste dag van de week in SQL Server in