Python SQLite chèn vào bảng từ một bảng khác

SQLite là một thư viện C như chúng tôi đã đề cập trong phần giới thiệu. Tuy nhiên, có những giao diện được tạo bằng nhiều ngôn ngữ khác nhau, bao gồm cả Python. Với yêu cầu tối thiểu cho SQLite 3. 7. 15, mô-đun sqlite3 cung cấp giao diện SQL. Phần tốt nhất là Python và sqlite3 đã được bao gồm sẵn, vì vậy không cần cài đặt gì

Các bước sau đây được sử dụng để chèn các hàng dữ liệu vào bảng cơ sở dữ liệu trong cơ sở dữ liệu SQLite

  • Hàm con trỏ của đối tượng kết nối nên được gọi để tạo đối tượng Con trỏ
  • Chạy câu lệnh INSERT. Để chuyển đối số làm đầu vào cho câu lệnh INSERT, dấu chấm hỏi [?] được sử dụng làm trình giữ chỗ cho mỗi đối số

Lệnh/câu lệnh INSERT INTO có thể được sử dụng theo hai cách để chèn dữ liệu

  1. Để chỉ chèn các giá trị
  2. Để chèn cả tên và giá trị cột

Đầu tiên, cần phải kết nối với SQLite DB. Sau đây là các bước để tạo hoặc kết nối cơ sở dữ liệu SQLite trong Python

Kết nối cơ sở dữ liệu SQLite trong Python

Phần này giải thích cách sử dụng mô-đun sqlite3 của Python để tạo kết nối tới SQLite DB. Các bước sau đây nên được sử dụng để kết nối với SQLite

  1. Nhập Mô-đun Sqlite3. Để nhập sqlite3, chúng ta có thể sử dụng câu lệnh “nhập sqlite3”. Chúng ta có thể tương tác với cơ sở dữ liệu SQLite bằng các hàm và lớp được xác định trong mô-đun sqlite3
  2. Sử dụng chức năng Connect[]. Sử dụng tên cơ sở dữ liệu trong hàm connect[] của lớp trình kết nối. Bạn phải nhập tên cơ sở dữ liệu bạn chọn để kết nối. Nó sẽ thiết lập kết nối đến tệp cơ sở dữ liệu mà bạn cung cấp nếu nó đã tồn tại trên đĩa. Tuy nhiên, SQLite tạo cơ sở dữ liệu mới với tên được chỉ định nếu tệp bạn yêu cầu cho cơ sở dữ liệu SQLite của mình chưa tồn tại. Khi kết nối được thiết lập thành công, hàm này sẽ trả về Đối tượng kết nối
  3. Sử dụng hàm Cursor[]. Tạo một con trỏ bằng cách sử dụng hàm cursor[] của lớp "kết nối" để chạy các lệnh hoặc truy vấn SQLite từ Python
  4. Sử dụng hàm Execute[]. Truy vấn SQL được thực thi bằng các hàm exec[] và kết quả được trả về
  5. Trích xuất kết quả. Để đọc kết quả của một truy vấn, hãy sử dụng con trỏ. hàm tìm nạp [], fetchmany[] hoặc hàm tìm nạp []
  6. Đóng con trỏ và kết nối. Sau khi công việc của bạn kết thúc, hãy sử dụng “con trỏ. close[]” và “kết nối. close[]” để đóng con trỏ và các kết nối SQLite

Tập lệnh chương trình sau tạo tệp DB mới “MyDB. db”, thiết lập kết nối với nó và in thông tin về phiên bản SQLite DB

đầu ra

Như có thể thấy ở đầu ra, cơ sở dữ liệu được tạo và kết nối hiện đang hoạt động. Sử dụng các hàm đã xác định, chúng tôi đã có được phiên bản cơ sở dữ liệu của mình

Chúng tôi đã tạo cơ sở dữ liệu của mình. Bây giờ, chúng ta cần một bảng để có thể nhập/chèn các hàng dữ liệu vào bên trong bảng

Tạo bảng SQLite trong Python

Bây giờ, chúng tôi sẽ giải thích cách sử dụng Python để tạo bảng trong cơ sở dữ liệu SQLite. Trong ví dụ này, “db_table” được tạo bên trong MyDB. cơ sở dữ liệu db. Một bảng SQLite trong Python có thể được tạo bằng các bước sau

  1. Sử dụng sqlite3. connect[] phương thức để kết nối với SQLite
  2. Tạo một bảng truy vấn
  3. Sử dụng con trỏ. hàm thực thi [truy vấn] để chạy truy vấn

đầu ra

Trong tập lệnh trước, chúng tôi đã sử dụng truy vấn để tạo bảng. Chúng tôi đã tạo ba cột bên trong các bảng “id”, “name” và “age” trong đó “id” được chỉ định làm khóa chính. Sau đó, con trỏ. hàm exec[] được sử dụng để chạy truy vấn

Vì chúng tôi đã tạo cả cơ sở dữ liệu SQLite và bảng của mình, giờ chúng tôi chèn dữ liệu vào bên trong bảng bằng các bước sau

  1. Trước tiên, hãy kết nối với SQLite DB từ Python bằng mô-đun sqlite3
  2. Tạo truy vấn SQL [INSERT] để thêm dữ liệu hàng vào bảng. Chúng tôi chỉ định tên cột cũng như giá trị của chúng để thêm vào bảng trong truy vấn chèn
  3. Bước tiếp theo là xây dựng một đối tượng con trỏ sử dụng kết nối. phương thức con trỏ []. Các truy vấn SQL có thể được chạy bằng các đối tượng con trỏ
  4. Thao tác được xác định trong truy vấn Chèn được thực hiện bằng cách sử dụng con trỏ. phương thức thực thi [truy vấn]
  5. Sử dụng phương thức commit[] của lớp “kết nối” để lưu các thay đổi vào cơ sở dữ liệu khi thao tác chèn hoàn tất thành công
  6. Sử dụng con trỏ. phương thức đếm hàng để xác định số lượng hàng bị ảnh hưởng sau thao tác chèn thành công. Số lượng dựa trên tổng số lượng hàng mà chúng tôi chèn
  7. Để quan sát các sửa đổi được cập nhật, hãy chạy truy vấn chọn SQLite nếu cần
  8. Các kết nối con trỏ và SQLite phải được đóng lại bằng cách sử dụng lệnh “kết nối. close[]” và “con trỏ. close[]” sau khi công việc của bạn kết thúc

Hãy chèn một số dữ liệu vào cơ sở dữ liệu MyDB và bảng db_table vì nó hiện đang trống

ví dụ 1. Chỉ chèn các giá trị

Chúng tôi đã tạo bảng “MyDB” với các biến trước đó. Bây giờ, chúng tôi sẽ chỉ thêm các giá trị vào bảng

cú pháp

CHÈN VÀO GIÁ TRỊ tên_bảng [ va1 , val2… ];

Ở đâu

tên_bảng. Tên của bảng

giá trị1, giá trị2. . Các giá trị để chèn vào mỗi cột của các hàng trong bảng

đầu ra

Chương trình mẫu về cách thêm dữ liệu vào bảng SQLite chỉ sử dụng các câu lệnh giá trị được hiển thị. Lần đầu tiên chúng tôi truy cập và kết nối với cơ sở dữ liệu MyDB. Sau đó, chúng tôi đã sử dụng cú pháp của truy vấn INSERT để thêm các giá trị bên trong bảng db_table. Chúng tôi đã gọi hàm exec[] nhiều lần với truy vấn bên trong nó để nhập nhiều hàng dữ liệu bên trong bảng. Nội dung của bảng sau đó được hiển thị và cam kết với cơ sở dữ liệu

ví dụ 2. Chèn cả biến và giá trị

Chương trình sau tương tự như chương trình đầu tiên. Nhưng thay vì thêm trực tiếp các giá trị vào bảng, chúng tôi sắp xếp lại thứ tự tên của cột chứa các giá trị

cú pháp

CHÈN VÀO tên_bảng [ col1 , col2 , col3,..] GIÁ TRỊ [ val1 , . val2, val3,..];

Ở đâu

tên_bảng. Tên của bảng

col1, col2,…. Tên các cột

giá1, giá2,…. Giá trị của các cột

đầu ra

Trong tập lệnh trước, chúng tôi đã tạo một bảng mới là “RECORD”. Các biến/tên cột được chỉ định là Stu, Grade và Marks. Chúng tôi đã gọi phương thức exec[] nhiều lần để chạy truy vấn chèn. Cuối cùng, dữ liệu được lưu trữ được hiển thị trên bàn điều khiển

Phần kết luận

Trong hướng dẫn này, chúng tôi đã tìm hiểu về việc giới thiệu SQLite. Sau đó, chúng ta đã thảo luận về cách chèn dữ liệu vào bảng SQLite trong Pandas. Đầu tiên, chúng tôi đã giải thích các bước để kết nối với SQLite DB bằng Python. Sau khi tạo kết nối, chúng tôi đã tạo một bảng SQLite. Chúng tôi đã triển khai hai ví dụ để chèn dữ liệu vào trong bảng của cơ sở dữ liệu SQLite. Trong ví dụ đầu tiên, chúng tôi đã chèn các giá trị cột cho mỗi hàng trong khi chúng tôi học cách thêm cả biến và giá trị trong ví dụ thứ hai

Làm cách nào để CHÈN dữ liệu từ bảng này sang bảng khác trong Python?

Chèn một hàng vào bảng MySQL từ Python .
Kết nối với MySQL từ Python. .
Xác định truy vấn Chèn SQL. .
Nhận đối tượng con trỏ từ kết nối. .
Thực hiện truy vấn chèn bằng phương thức exec[]. .
Cam kết thay đổi của bạn. .
Nhận số hàng bị ảnh hưởng. .
Xác minh kết quả bằng truy vấn SQL SELECT

Làm cách nào để CHÈN các giá trị vào bảng trong SQLite bằng Python?

Chèn dữ liệu bằng python .
Nhập gói sqlite3
Tạo một đối tượng kết nối bằng phương thức connect[] bằng cách chuyển tên của cơ sở dữ liệu làm tham số cho nó
Phương thức con trỏ [] trả về một đối tượng con trỏ mà bạn có thể giao tiếp với SQLite3 bằng cách sử dụng

Làm cách nào để CHÈN dữ liệu vào bảng trong SQLite?

SQLite INSERT – chèn một hàng vào bảng .
Đầu tiên, chỉ định tên của bảng mà bạn muốn chèn dữ liệu sau từ khóa INSERT INTO
Thứ hai, thêm danh sách các cột được phân tách bằng dấu phẩy sau tên bảng. Danh sách cột là tùy chọn. .
Thứ ba, thêm danh sách các giá trị được phân tách bằng dấu phẩy sau từ khóa GIÁ TRỊ

Làm cách nào để CHÈN dữ liệu số lượng lớn trong SQLite?

SQLite không có bất kỳ cách đặc biệt nào để chèn dữ liệu hàng loạt. Để có được hiệu suất tối ưu khi chèn hoặc cập nhật dữ liệu, hãy đảm bảo rằng bạn thực hiện như sau. Sử dụng giao dịch. Sử dụng lại cùng một lệnh được tham số hóa .

Chủ Đề