Này, những người yêu thích Python [cụ thể là các lập trình viên 😂 không phải là người yêu rắn] ở đây chúng tôi đang về một chủ đề thảo luận và thực hiện mới:- SQLite- Tạo bảng nếu không tồn tại bằng cách sử dụng Python.“Sqlite – create table if not exists using Python”. Bây giờ tất cả chúng ta đều biết về một plugin SQLite rất nổi tiếng SQLite3 hợp tác với môi trường Python mặc định. Điều này giúp chúng tôi tạo ra các ứng dụng thời gian thực và sau đó kết nối chúng với cơ sở dữ liệu mà không cần sử dụng localhost hoặc máy chủ trực tuyến. Chúng ta có thể gọi SQLite3 là một loại ứng dụng chạy trên máy cục bộ mà không có bất kỳ cài đặt cấu hình nào. Vì vậy, để làm cho mọi thứ dễ dàng hơn, chúng tôi sẽ viết một kịch bản sẽ kiểm tra xem bảng có tồn tại hay không. Nếu nó không tồn tại, nó sẽ tự động tạo một cho chúng tôi. Điều này giống như làm một công cụ thông minh. Vì vậy, hãy để chúng tôi đi cho nó! Cũng đọc: Kiểm tra xem bảng có tồn tại không - Python SQLite3 Tạo một thư mục có tên là Tạo bảng và sau đó thêm mã sau trong một tệp trong cùng một thư mục. Code:Tạo bảng nếu nó không tồn tại bằng cách sử dụng python sqlite3
import sqlite3 connection = sqlite3.connect['database/school.db'] # file path # create a cursor object from the cursor class cur = connection.cursor[] cur.execute[''' CREATE TABLE stud_data[ roll_no integer, name text, class integer, division text ]'''] print["\nDatabase created successfully!!!"] # committing our connection connection.commit[] # close our connection connection.close[]
Output:
Database created successfully!!!
Chúng tôi đã tạo ra một cơ sở dữ liệu trường học có chứa bảng dữ liệu sinh viên, stud_data. Bảng có bốn cột: roll_no, tên, lớp và phân chia. Khi chúng ta hình dung nó trong SQLite Studio, điều này trông như thế này:“stud_data”. The table has four columns: roll_no, name, class, and division. When we visualize it in SQLite studio, this looks like this:
Xóa bảng
Cố tình chúng tôi sẽ xóa bảng và sau đó tạo tập lệnh thông minh của chúng tôi.
Mã để xóa bảng:
import sqlite3 connection = sqlite3.connect['database/school.db'] connection.execute["DROP TABLE stud_data"] print["Your table has been deleted!!!"] connection.close[]
Bảng thả Bảng Table_Name Truy vấn giảm/xóa bảng. Hãy chắc chắn để thêm tên bảng tương ứng.DROP TABLE “table_name” query drops/deletes the table. Make sure to add the respective table name.
Output:
Your table has been deleted!!!
Hoàn thành mã để tạo và xóa một bảng
Phần này chứa tập lệnh chính sẽ kiểm tra xem bảng có tồn tại hay không có trong cơ sở dữ liệu. Nếu trường hợp xảy ra thì một bảng mới có cùng tên và tham số được tạo.
Code:
import sqlite3 connection = sqlite3.connect['database/school.db'] cur = connection.cursor[] try: cur.execute["SELECT * FROM stud_data"] # storing the data in a list data_list = cur.fetchall[] print['Roll_Number' + '\t Name'] print['--------' + '\t\t-------------'] for item in items: print[item[0] + ' | ' + item[1] + '\t' + item[2]] except sqlite3.OperationalError: print["No such table: stud_data"] if[sqlite3.OperationalError]: # if this error occurs try: print["Creating a new table: "] cur.execute[''' CREATE TABLE stud_data[ roll_no integer, name text, class integer, division text ]'''] print["New table created successfully!!!"] print["Here are the contents of the table: \n1: roll_no. \n2: name \n3: class \n4:division."] except sqlite3.Error[] as e: print[e, " occured"] connection.commit[] connection.close[]
Output:
No such table: stud_data Creating a new table: New table created successfully!!! Here are the contents of the table: 1: roll_no. 2: name 3: class 4: division.
Explanation:
- Chúng tôi xác định hai khối thử. Cái đầu tiên kiểm tra xem một bảng có tồn tại hay không. Nếu không phải điều kiện nếu điều kiện nhảy đến khối thử mới và tạo một bảng mới cho chúng tôi.
- Trong khối thử đầu tiên: sử dụng truy vấn sqlite: & nbsp;“SELECT * FROM table_name” will try to fetch all the rows and columns from the table.
- Nếu bảng vắng mặt, hãy thử khối ném sqlite.operationalerror. Các khối ngoại trừ xử lý nó. Câu lệnh if [] trong nó mở khối Except lần thứ hai.sqlite.OperationalError. The except block handles it. The if[] statement under it opens second try-except block.
- Sau đó, câu lệnh thử thứ hai hoàn thành nhiệm vụ tạo một bảng mới với cùng một tham số.
- Khối ngoại trừ kiểm tra bất kỳ lỗi phổ biến nào bằng phương thức sqlite.error [] và xử lý nó.sqlite.Error[] method and handles it.
- Phần thứ hai của mã chỉ thực hiện một truy vấn về việc tạo một bảng mới stud_data và chèn nó vào cơ sở dữ liệu của chúng tôi.stud_data and inserting it into our database.
Gói lên…
Đây là cách chúng ta có thể kiểm tra xem một bảng tồn tại trong cơ sở dữ liệu SQLite của chúng ta hay không. Đó là một khuyến nghị để hiểu cách thức hoạt động của mã trước khi thực hiện giải pháp. Cảm ơn vì đã đọc.