SQLite
 sql >> Baza danych >  >> RDS >> SQLite

Wstaw SQLite

Podsumowanie :w tym samouczku dowiesz się, jak używać SQLite INSERT oświadczenie, aby wstawić nowe wiersze do tabeli.

Aby wstawić dane do tabeli, użyj INSERT oświadczenie. SQLite zapewnia różne formy INSERT wyrażenia, które pozwalają wstawić pojedynczy wiersz, wiele wierszy i wartości domyślne do tabeli.

Ponadto możesz wstawić wiersz do tabeli, korzystając z danych dostarczonych przez SELECT oświadczenie.

SQLite INSERT – wstawienie pojedynczego wiersza do tabeli

Aby wstawić pojedynczy wiersz do tabeli, użyj następującej formy INSERT oświadczenie:

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

Przyjrzyjmy się INSERT bardziej szczegółowe oświadczenie:

  • Najpierw określ nazwę tabeli, do której chcesz wstawić dane po INSERT INTO słowa kluczowe.
  • Po drugie, dodaj rozdzieloną przecinkami listę kolumn po nazwie tabeli. Lista kolumn jest opcjonalna. Jednak dobrą praktyką jest umieszczenie listy kolumn po nazwie tabeli.
  • Po trzecie, dodaj rozdzieloną przecinkami listę wartości po VALUES słowo kluczowe. Jeśli pominiesz listę kolumn, musisz określić wartości dla wszystkich kolumn na liście wartości. Liczba wartości na liście wartości musi być taka sama jak liczba kolumn na liście kolumn.

Użyjemy artists tabeli w przykładowej bazie danych do demonstracji.

Poniższa instrukcja wstawia nowy wiersz do artists tabela:

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

Wypróbuj

Ponieważ ArtistId kolumna jest kolumną z automatycznym przyrostem, można ją zignorować w oświadczeniu. SQLite automatycznie generuje kolejną liczbę całkowitą do wstawienia do ArtistId kolumna.

Możesz zweryfikować operację wstawiania, używając następującego SELECT oświadczenie:

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

Wypróbuj

Jak widzisz, mamy nowy wiersz w artists tabela.

SQLite INSERT – Wstawianie wielu wierszy do tabeli

Aby wstawić wiele wierszy do tabeli, użyj następującej formy INSERT oświadczenie:

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

Każda lista wartości następująca po VALUES klauzula jest wierszem, który zostanie wstawiony do tabeli.

Poniższy przykład wstawia trzy wiersze do artists tabela:

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

Wypróbuj

SQLite wysłał wiadomość:

Row Affected: 3

Możesz zweryfikować wynik za pomocą następującego oświadczenia:

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

Wypróbuj

SQLite INSERT – Wstawianie wartości domyślnych

Kiedy tworzysz nową tabelę za pomocą CREATE TABLE oświadczenie, możesz określić wartości domyślne dla kolumn lub NULL jeśli nie określono wartości domyślnej.

Trzecia forma INSERT instrukcja to INSERT DEFAULT VALUES , który wstawia nowy wiersz do tabeli przy użyciu wartości domyślnych określonych w definicji kolumny lub NULL jeśli wartość domyślna nie jest dostępna, a kolumna nie ma NOT NULL ograniczenie.

Na przykład poniższa instrukcja wstawia nowy wiersz do artists tabela przy użyciu INSERT DEFAULT VALUES :

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

Wypróbuj

Aby zweryfikować wstawkę, użyj następującej instrukcji:

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

Wypróbuj

Domyślna wartość ArtistId kolumna jest następną sekwencyjną liczbą całkowitą . Jednak name kolumna nie ma żadnej wartości domyślnej, dlatego INSERT DEFAULT VALUES instrukcja wstawia NULL do niego.

SQLite INSERT – Wstawianie nowych wierszy z danymi dostarczonymi przez SELECT oświadczenie

Załóżmy, że chcesz wykonać kopię zapasową artists tabeli, możesz wykonać następujące kroki:

Najpierw utwórz nową tabelę o nazwie artists_backup w następujący sposób:

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

Wypróbuj

Aby wstawić dane do artists_backup tabela z danymi od artists tabeli, użyj INSERT INTO SELECT oświadczenie w następujący sposób:

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

Wypróbuj

Jeśli zapytasz o dane z artists_backup tabeli, zobaczysz wszystkie dane w artists tabela.

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

Wypróbuj

W tym samouczku nauczyłeś się korzystać z różnych form SQLite INSERT oświadczenie, które wstawia nowe wiersze do tabeli.

Referencje

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

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Znaleziono wyciek bazy danych SQLite

  2. Czy powinien istnieć jeden SQLiteOpenHelper dla każdej tabeli w bazie danych?

  3. Otwieranie bazy danych Android Sqlite we fragmencie

  4. Jak stworzyć aplikację do internacjonalizacji offline:Zbuduj strukturę projektu

  5. Nie można powiązać argumentu z indeksem 2, ponieważ indeks jest poza zakresem