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

Cách kiểm tra xem một bảng có tồn tại trong SQLite hay không

Trong SQLite, chúng ta có thể truy vấn sqlite_schema để tìm hiểu xem một bảng nhất định có tồn tại hay không.

Trước phiên bản SQLite 3.33.0, bảng này được gọi là sqlite_master (nó vẫn có thể được gọi như vậy trong các bản phát hành tiếp theo để tương thích ngược).

Ví dụ

Dưới đây là một ví dụ để chứng minh:

SELECT EXISTS (
    SELECT 
        name
    FROM 
        sqlite_schema 
    WHERE 
        type='table' AND 
        name='Customers'
    );

Kết quả:

1

Trong trường hợp này, bảng tồn tại và 1 được trả lại.

Dưới đây là một ví dụ về những gì sẽ xảy ra khi bảng không tồn tại:

SELECT EXISTS (
    SELECT 
        name
    FROM 
        sqlite_schema 
    WHERE 
        type='table' AND 
        name='Inventory'
    );

Kết quả:

0

sqlite_master Bảng

Có thể chạy cùng một truy vấn bằng cách sử dụng sqlite_master thay vì sqlite_schema :

SELECT EXISTS (
    SELECT 
        name
    FROM 
        sqlite_master 
    WHERE 
        type='table' AND 
        name='Customers'
    );

Kết quả:

1

Bạn cũng có thể sử dụng sqlite_temp_schema hoặc sqlite_temp_master , nhưng những điều này chỉ hoạt động cho TEMP cơ sở dữ liệu được liên kết với mỗi kết nối cơ sở dữ liệu.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để truy xuất tất cả các hàng trong DB của tôi?

  2. Dữ liệu SQLite đến RecyclerView

  3. Android - cập nhật cơ sở dữ liệu sqlite của ứng dụng khách bằng GCM

  4. Cách hoạt động của toán tử LIKE trong SQLite

  5. Làm cách nào để dịch hàm array_agg của PostgreSQL sang SQLite?