SQLite
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> SQLite

3 Cách tạo Tập lệnh TẠO BẢNG từ một Bảng hiện có trong SQLite

Bài viết này bao gồm ba cách để tạo một tập lệnh SQL từ một bảng hiện có trong SQLite.

Cả ba phương pháp đều tạo CREATE TABLE script, nhưng phương thức cuối cùng cũng tạo ra INSERT câu lệnh để chèn dữ liệu.

Lệnh .schema

Nếu bạn chỉ muốn viết cấu trúc bảng (tức là không có dữ liệu của nó), bạn có thể sử dụng .schema yêu cầu.

Để thực hiện việc này, chỉ cần sử dụng .schema theo sau là tên của bảng bạn muốn tập lệnh.

Đây là một ví dụ:

.schema Genre

Kết quả:

CREATE TABLE [Genre]
(
    [GenreId] INTEGER  NOT NULL,
    [Name] NVARCHAR(120),
    CONSTRAINT [PK_Genre] PRIMARY KEY  ([GenreId])
);

Trong trường hợp này, tôi đã viết kịch bản cho Genre bảng.

Bạn cũng có thể sử dụng đối sánh mẫu với .schema yêu cầu.

Ví dụ:lệnh sau trả về kết quả giống như lệnh trước:

.schema Gen%

Bạn cũng có thể sử dụng .schema lệnh để tập lệnh cho toàn bộ cơ sở dữ liệu. Để làm điều này, chỉ cần sử dụng lệnh mà không có đối số. Như thế này:

.schema

Theo mặc định, .schema hiển thị lược đồ cho tất cả các cơ sở dữ liệu đính kèm. Nếu bạn chỉ muốn xem lược đồ cho một cơ sở dữ liệu duy nhất, bạn có thể thêm đối số để chỉ định / các cơ sở dữ liệu mà bạn quan tâm.

Ví dụ:

.schema main.*

Bảng sqlite_master

Một thay thế cho .schema là truy vấn trực tiếp sqlite_master bàn. Bảng này chứa một cột có tên sql , chứa SQL được sử dụng để tạo bảng.

Đây là một ví dụ:

SELECT sql FROM sqlite_master WHERE tbl_name = 'Genre';

Kết quả:

CREATE TABLE [Genre]
(
    [GenreId] INTEGER  NOT NULL,
    [Name] NVARCHAR(120),
    CONSTRAINT [PK_Genre] PRIMARY KEY  ([GenreId])
)

Bao gồm dữ liệu bảng

Nếu bạn muốn tất cả dữ liệu, hãy sử dụng .dump yêu cầu. Lệnh này tập lệnh cho CREATE TABLE cũng như INSERT câu lệnh để chèn tất cả dữ liệu vào bảng.

Đây là một ví dụ:

.dump Genre

Kết quả:

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;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách cài đặt phiên bản Sqlite aar mới nhất khi sử dụng Room On Android

  2. Sqlite3 không chèn nhiều hàng theo thứ tự

  3. sqlite trả về:mã lỗi =1, msg =không có cột như vậy:bếp1

  4. Kiểm tra đơn vị cơ sở dữ liệu SQLite của Android

  5. Phòng - Sử dụng SQLites bên ngoài cũng như DB nội bộ