Làm cách nào để tạo cơ sở dữ liệu sqlite từ tệp csv trong python?
Bây giờ, để giải quyết yêu cầu này, chúng tôi sẽ sử dụng hai mô-đun. sqlite3 và gấu trúc. Vì vậy, hãy thảo luận về những điều này đầu tiên Show
mô-đun sqlite3 được sử dụng để truy cập cơ sở dữ liệu SQLite trong Python. SQLite là một công cụ cơ sở dữ liệu SQL độc lập, có độ tin cậy cao, được nhúng, đầy đủ tính năng, miền công cộng. Nó là công cụ cơ sở dữ liệu được sử dụng nhiều nhất trên web trên toàn thế giới Pandas là một thư viện mã nguồn mở được xây dựng dựa trên thư viện NumPy. Đây là gói Python cung cấp các cấu trúc dữ liệu và hoạt động khác nhau để thao tác dữ liệu số và chuỗi thời gian. Nó chủ yếu phổ biến để nhập và phân tích dữ liệu dễ dàng hơn nhiều. Pandas nhanh và có hiệu suất và năng suất cao cho người dùng Bây giờ, hãy xem cách nhập dữ liệu tệp CSV vào bảng cơ sở dữ liệu SQLite bằng Python.
Syntax: import moduleName
Syntax: sqlite3.connect(‘databaseName.db’)
Syntax: connection_object.cursor()
Syntax: cursor_object.execute("Sql Query")
Syntax: pandas.read_csv(‘file_name.csv’)
Hàm to_sql() tạo một bảng mới từ các bản ghi của khung dữ liệu. Truyền tên bảng và đối tượng kết nối bên trong chức năng này. Tên cột của bảng giống với tiêu đề của tệp CSV. Theo mặc định, chỉ mục khung dữ liệu được viết dưới dạng cột. Chỉ cần chuyển tham số chỉ mục thành Sai để xóa cột này. Ngoài ra, tham số if_exists chỉ định hành vi trong trường hợp tên bảng đã được sử dụng. Nó có thể gây ra lỗi (không đạt), nối thêm các giá trị mới hoặc thay thế bảng hiện có Rất ít người quen thuộc với SQL hơn là chạy các điều kiện trên dữ liệu bằng python và việc chạy các truy vấn SQL trên dữ liệu hiệu quả hơn và yêu cầu ít dòng hơn trong python trong hầu hết các trường hợp chúng tôi có một gói có tên “csv-to-sqlite” trong Python, chúng tôi có thể nhập mô-đun bằng cách sử dụng pip. cái nào chuyển đổi. tệp csv thành. tập tin sqlite pip install csv-to-sqlite Sau khi cài đặt bằng gói nhập pip import csv_to_sqlite Sau khi nhập gói, trước khi chuyển đổi thành. sqlite chúng ta cần chỉ định loại tệp(“your_csv_file. csv”) đó là định dạng mã hóa dữ liệu và dấu phân cách dữ liệu. Dấu phân cách mặc định là dấu phẩy(‘,’) chúng ta có thể thay đổi theo định dạng dữ liệu trong tệp csv Có thể bạn quan tâmoptions=csv_to_sqlite.CsvOptions(typing_style=”full”,encoding=”windows-1250") Sau khi thực hiện các dòng mã trên, bây giờ tệp csv của bạn đã được chuyển đổi thành sqlite trong thư mục hiện tại. Ở đây, trong trường hợp này, nó được tạo với tên tệp “đầu ra. sqlite” Bây giờ chúng tôi có. sqlite làm cách nào chúng ta có thể chạy các truy vấn SQL trên đó bằng Python ?????? . Sau khi nhập gói này, chúng tôi cần tạo kết nối với cơ sở dữ liệu mà chúng tôi cần thực hiện các truy vấn SQL ________số 8Ở đây sau khi chuyển đổi csv thành sqlite, một điểm rất quan trọng. Trong tệp sqlite, tên cơ sở dữ liệu là tên của tệp csv. Điều đó có nghĩa là ở đây chúng tôi chuyển đổi your_csv_file. csv -> đầu ra. sqlite. Vì vậy, tên bảng cơ sở dữ liệu trong sqlite là your_csv_file Mã nguồn import sqlite3 Ở đâyfilter_data của bạn là Khung dữ liệu Có một cách khác để xử lý các tệp sqlite bằng cách sử dụng sqliteonline. com. chúng tôi có thể tải lên các tệp sqlite của mình, chúng tôi có thể chạy các truy vấn ở đó Khi bạn mở CSV trong python và gán nó cho một tên biến, bạn đang sử dụng bộ nhớ máy tính của mình để lưu biến đó. Truy cập dữ liệu từ cơ sở dữ liệu như SQL không chỉ hiệu quả hơn mà còn cho phép bạn tập hợp con và chỉ nhập các phần dữ liệu mà bạn cần Trong bài học sau, chúng ta sẽ xem một số phương pháp có thể được thực hiện để làm như vậy Mô-đun Syntax: sqlite3.connect(‘databaseName.db’)4Mô-đun sqlite3 cung cấp giao diện đơn giản để tương tác với cơ sở dữ liệu SQLite. Một đối tượng kết nối được tạo bằng cách sử dụng Syntax: sqlite3.connect(‘databaseName.db’)5; . Trong khi kết nối đang mở, bất kỳ tương tác nào với cơ sở dữ liệu đều yêu cầu bạn tạo một đối tượng con trỏ bằng lệnh Syntax: sqlite3.connect(‘databaseName.db’)7. Sau đó, con trỏ đã sẵn sàng để thực hiện tất cả các loại thao tác với Syntax: sqlite3.connect(‘databaseName.db’)8 Syntax: sqlite3.connect(‘databaseName.db’)0 Truy vấnMột trong những cách phổ biến nhất để tương tác với cơ sở dữ liệu là truy vấn. truy xuất dữ liệu dựa trên một số tham số tìm kiếm. Sử dụng chuỗi câu lệnh SELECT. Truy vấn được trả về dưới dạng một bộ hoặc một bộ gồm nhiều bộ. Thêm câu lệnh WHERE để lọc kết quả của bạn dựa trên một số tham số Syntax: sqlite3.connect(‘databaseName.db’)1 Truy cập dữ liệu được lưu trữ trong SQLite bằng Python và PandasSử dụng gấu trúc, chúng tôi có thể nhập kết quả của truy vấn SQLite vào khung dữ liệu. Lưu ý rằng bạn có thể sử dụng các lệnh/cú pháp SQL giống như chúng ta đã sử dụng trong bài học SQLite. Dưới đây là một ví dụ về việc sử dụng gấu trúc cùng với sqlite Syntax: sqlite3.connect(‘databaseName.db’)2 Lưu trữ dữ liệu. CSV so với SQLiteLưu trữ dữ liệu của bạn trong cơ sở dữ liệu SQLite có thể cải thiện hiệu suất đáng kể khi đọc/ghi so với CSV. Sự khác biệt về hiệu suất trở nên đáng chú ý hơn khi kích thước của tập dữ liệu tăng lên (ví dụ: xem các điểm chuẩn này)
Lưu trữ dữ liệu. Tạo bảng mới bằng PandasChúng tôi cũng có thể sử dụng gấu trúc để tạo các bảng mới trong cơ sở dữ liệu SQLite. Ở đây, chúng tôi chạy, chúng tôi thực hiện lại một bài tập mà chúng tôi đã làm trước đây với các tệp CSV bằng cơ sở dữ liệu SQLite của chúng tôi. Trước tiên, chúng tôi đọc dữ liệu khảo sát của mình, sau đó chỉ chọn những kết quả khảo sát đó cho năm 2002, sau đó lưu dữ liệu đó vào bảng riêng để chúng tôi có thể tự làm việc với nó sau này Syntax: sqlite3.connect(‘databaseName.db’)3
|