Artikel ini berisi tiga cara untuk menghasilkan skrip SQL dari tabel yang ada di SQLite.
Ketiga metode menghasilkan CREATE TABLE
skrip, tetapi metode terakhir juga menghasilkan INSERT
pernyataan untuk memasukkan data.
Perintah .schema
Jika Anda hanya ingin membuat skrip struktur tabel (yaitu tanpa datanya), Anda dapat menggunakan .schema
memerintah.
Untuk melakukannya, cukup gunakan .schema
diikuti dengan nama tabel yang ingin Anda skrip.
Ini contohnya:
.schema Genre
Hasil:
CREATE TABLE [Genre] ( [GenreId] INTEGER NOT NULL, [Name] NVARCHAR(120), CONSTRAINT [PK_Genre] PRIMARY KEY ([GenreId]) );
Dalam hal ini saya membuat skrip Genre
tabel.
Anda juga dapat menggunakan pencocokan pola dengan .schema
memerintah.
Misalnya, perintah berikut mengembalikan hasil yang sama seperti yang sebelumnya:
.schema Gen%
Anda juga dapat menggunakan .schema
perintah untuk skrip seluruh database. Untuk melakukan ini, cukup gunakan perintah tanpa argumen. Seperti ini:
.schema
Secara default, .schema
menunjukkan skema untuk semua database terlampir. Jika Anda hanya ingin melihat skema untuk satu database, Anda dapat menambahkan argumen untuk menentukan database yang Anda minati.
Misalnya:
.schema main.*
Tabel sqlite_master
Alternatif untuk .schema
adalah untuk langsung menanyakan sqlite_master meja. Tabel ini berisi kolom bernama sql , yang berisi SQL yang digunakan untuk membuat tabel.
Ini contohnya:
SELECT sql FROM sqlite_master WHERE tbl_name = 'Genre';
Hasil:
CREATE TABLE [Genre] ( [GenreId] INTEGER NOT NULL, [Name] NVARCHAR(120), CONSTRAINT [PK_Genre] PRIMARY KEY ([GenreId]) )
Sertakan Data Tabel
Jika Anda ingin semua data, gunakan .dump
memerintah. Perintah ini membuat skrip CREATE TABLE
pernyataan serta INSERT
pernyataan untuk memasukkan semua data ke dalam tabel.
Ini contohnya:
.dump Genre
Hasil:
PRAGMA foreign_keys=OFF; BEGIN TRANSACTION; CREATE TABLE [Genre] ( [GenreId] INTEGER NOT NULL, [Name] NVARCHAR(120), CONSTRAINT [PK_Genre] PRIMARY KEY ([GenreId]) ); INSERT INTO Genre VALUES(1,'Rock'); INSERT INTO Genre VALUES(2,'Jazz'); INSERT INTO Genre VALUES(3,'Metal'); INSERT INTO Genre VALUES(4,'Alternative & Punk'); INSERT INTO Genre VALUES(5,'Rock And Roll'); INSERT INTO Genre VALUES(6,'Blues'); INSERT INTO Genre VALUES(7,'Latin'); INSERT INTO Genre VALUES(8,'Reggae'); INSERT INTO Genre VALUES(9,'Pop'); INSERT INTO Genre VALUES(10,'Soundtrack'); INSERT INTO Genre VALUES(11,'Bossa Nova'); INSERT INTO Genre VALUES(12,'Easy Listening'); INSERT INTO Genre VALUES(13,'Heavy Metal'); INSERT INTO Genre VALUES(14,'R&B/Soul'); INSERT INTO Genre VALUES(15,'Electronica/Dance'); INSERT INTO Genre VALUES(16,'World'); INSERT INTO Genre VALUES(17,'Hip Hop/Rap'); INSERT INTO Genre VALUES(18,'Science Fiction'); INSERT INTO Genre VALUES(19,'TV Shows'); INSERT INTO Genre VALUES(20,'Sci Fi & Fantasy'); INSERT INTO Genre VALUES(21,'Drama'); INSERT INTO Genre VALUES(22,'Comedy'); INSERT INTO Genre VALUES(23,'Alternative'); INSERT INTO Genre VALUES(24,'Classical'); INSERT INTO Genre VALUES(25,'Opera'); COMMIT;