Przejdź do treści stopki
POMOC DOTYCZąCA JęZYKA PYTHON

sqlite utils Python (jak to działa dla programistów)

Pakiet SQLite-utils dla języka Python to wszechstronne narzędzie zawierające funkcje użytkowe w języku Python do pracy z bazami danych SQLite. Oferuje interfejs wiersza poleceń (CLI) oraz bibliotekę Python, co ułatwia tworzenie, modyfikowanie i przeszukiwanie baz danych SQLite. Przyjrzyjmy się jego funkcjom i zobaczmy kilka przykładów kodu. W dalszej części tego artykułu omówimy IronPDF, bibliotekę do generowania plików PDF opracowaną przez firmę Iron Software.

Przegląd SQLite-utils

SQLite-utils został zaprojektowany w celu uproszczenia różnych zadań związanych z obsługą baz danych SQLite. Niektóre z jego kluczowych funkcji to:

  • Tworzenie baz danych i zarządzanie nimi: Łatwe tworzenie nowych baz danych i tabel.
  • Wstawianie i wyszukiwanie danych: Wstawiaj dane JSON, pliki CSV lub TSV i uruchamiaj zapytania SQL.
  • Wyszukiwanie pełnotekstowe: Konfiguruj i uruchamiaj zapytania wyszukiwania pełnotekstowego.
  • Transformacje schematów: Wykonuj zmiany schematów, których funkcja ALTER TABLE w SQLite nie obsługuje bezpośrednio.
  • Normalizacja danych: Wyodrębnij kolumny do oddzielnych tabel w celu normalizacji danych.
  • Niestandardowe funkcje SQL: Zainstaluj wtyczki, aby dodać niestandardowe funkcje SQL.

Instalacja

Możesz zainstalować SQLite-utils za pomocą pip:

pip install sqlite-utils
pip install sqlite-utils
SHELL

Lub, jeśli korzystasz z Homebrew na macOS:

brew install sqlite-utils
brew install sqlite-utils
SHELL

Korzystanie z SQLite-utils jako narzędzia CLI

Narzędzie CLI pozwala na wykonywanie różnych operacji bezpośrednio z wiersza poleceń. Oto kilka przykładów:

Tworzenie bazy danych i wstawianie danych

Utwórzmy nową bazę danych SQLite i wstawmy do niej dane z pliku CSV:

# Create a new database and insert data from a CSV file
sqlite-utils insert dogs.db dogs dogs.csv --csv
# Create a new database and insert data from a CSV file
sqlite-utils insert dogs.db dogs dogs.csv --csv
SHELL

Wyszukiwanie danych

Poniższe polecenie pokazuje, jak wykonać zapytanie SQL z bazy danych:

# Query the database and display results in JSON format
sqlite-utils dogs.db "select * from dogs" --json
# Query the database and display results in JSON format
sqlite-utils dogs.db "select * from dogs" --json
SHELL

Tabele

Wymień wszystkie tabele w bazie danych wraz z liczbą wierszy:

sqlite-utils tables dogs.db --counts
sqlite-utils tables dogs.db --counts
SHELL

Korzystanie z biblioteki SQLite-utils w języku Python

Można również używać SQLite-utils jako biblioteki Python do programowej interakcji z bazami danych SQLite.

Tworzenie bazy danych i wstawianie danych

Oto jak utworzyć nową bazę danych i wstawić dane przy użyciu języka Python:

import sqlite_utils

# Create a new database
db = sqlite_utils.Database("demo_database.db")

# Insert data into a table
db["dogs"].insert_all([
    {"id": 1, "age": 4, "name": "Cleo"},
    {"id": 2, "age": 2, "name": "Pancakes"}
], pk="id")
import sqlite_utils

# Create a new database
db = sqlite_utils.Database("demo_database.db")

# Insert data into a table
db["dogs"].insert_all([
    {"id": 1, "age": 4, "name": "Cleo"},
    {"id": 2, "age": 2, "name": "Pancakes"}
], pk="id")
PYTHON

Wyszukiwanie danych

Możesz uruchamiać zapytania SQL i pobierać wyniki:

# Run a query and fetch results
rows = db.query("SELECT * FROM dogs")
for row in rows:
    print(row)
# Run a query and fetch results
rows = db.query("SELECT * FROM dogs")
for row in rows:
    print(row)
PYTHON

Wyszukiwanie pełnotekstowe

Włącz wyszukiwanie pełnotekstowe w tabeli i wykonaj zapytania:

# Enable full-text search on the 'name' column
db["dogs"].enable_fts(["name"])

# Run a search query for the term "Cleo"
results = db["dogs"].search("Cleo")
for result in results:
    print(result)
# Enable full-text search on the 'name' column
db["dogs"].enable_fts(["name"])

# Run a search query for the term "Cleo"
results = db["dogs"].search("Cleo")
for result in results:
    print(result)
PYTHON

Przedstawiamy IronPDF

sqlite utils Python (Jak to działa dla programistów): Rysunek 1 – IronPDF: biblioteka PDF dla języka Python

IronPDF to potężna biblioteka języka Python przeznaczona do tworzenia, edytowania i podpisywania plików PDF przy użyciu HTML, CSS, obrazów i JavaScript. Oferuje wydajność na poziomie komercyjnym przy niewielkim zużyciu pamięci. Najważniejsze cechy to:

Konwersja HTML do PDF:

Konwertuj pliki HTML, ciągi znaków HTML i adresy URL na pliki PDF. Na przykład, renderuj stronę internetową jako plik PDF przy użyciu renderera PDF przeglądarki Chrome.

Obsługa wielu platform:

Kompatybilny z różnymi platformami .NET, w tym .NET Core, .NET Standard i .NET Framework. Obsługuje systemy Windows, Linux i macOS.

Redakcja i podpisanie:

Ustawiaj właściwości, dodawaj zabezpieczenia za pomocą haseł i uprawnień oraz stosuj podpisy cyfrowe w plikach PDF.

Szablony stron i ustawienia:

Możesz dostosować pliki PDF, dodając nagłówki, stopki, numery stron i regulowane marginesy. Dodatkowo obsługuje niestandardowe rozmiary papieru i responsywne układy.

Zgodność z normami:

Zgodny ze standardami PDF, w tym PDF/A i PDF/UA, obsługuje kodowanie znaków UTF-8 oraz zarządza zasobami, takimi jak obrazy, CSS i czcionki.

Generowanie dokumentów PDF przy użyciu IronPDF i Sqlite Utils

import sqlite_utils
from ironpdf import ChromePdfRenderer, License

# Apply your license key
License.LicenseKey = "key"

# Initialize a new database
db = sqlite_utils.Database("mydatabase.db")

# Define a table schema
schema = {
    "id": int,
    "name": str,
    "age": int
}

# Create a table with the defined schema
db["users"].create(schema)

# Sample data to insert into the table
data = [
    {"id": 1, "name": "Alice", "age": 30},
    {"id": 2, "name": "Bob", "age": 28},
    {"id": 3, "name": "Charlie", "age": 32}
]

# Insert data into the table
db["users"].insert_all(data)

# Query all records from the table
rows = db.query("SELECT * FROM users")

# Initialize the PDF renderer
renderer = ChromePdfRenderer()

# Create HTML content for the PDF
content = "<h1>Awesome IronPDF with Sqlite-Utils</h1>"
content += "<p>Table data:</p>"
for row in rows:
    content += f"<p>{row}</p>"

# Render the HTML content as PDF
pdf = renderer.RenderHtmlAsPdf(content)

# Save the generated PDF as a file
pdf.save_as("DemoSqliteUtils.pdf")
import sqlite_utils
from ironpdf import ChromePdfRenderer, License

# Apply your license key
License.LicenseKey = "key"

# Initialize a new database
db = sqlite_utils.Database("mydatabase.db")

# Define a table schema
schema = {
    "id": int,
    "name": str,
    "age": int
}

# Create a table with the defined schema
db["users"].create(schema)

# Sample data to insert into the table
data = [
    {"id": 1, "name": "Alice", "age": 30},
    {"id": 2, "name": "Bob", "age": 28},
    {"id": 3, "name": "Charlie", "age": 32}
]

# Insert data into the table
db["users"].insert_all(data)

# Query all records from the table
rows = db.query("SELECT * FROM users")

# Initialize the PDF renderer
renderer = ChromePdfRenderer()

# Create HTML content for the PDF
content = "<h1>Awesome IronPDF with Sqlite-Utils</h1>"
content += "<p>Table data:</p>"
for row in rows:
    content += f"<p>{row}</p>"

# Render the HTML content as PDF
pdf = renderer.RenderHtmlAsPdf(content)

# Save the generated PDF as a file
pdf.save_as("DemoSqliteUtils.pdf")
PYTHON

Wyjaśnienie kodu

Ten skrypt łączy funkcje pakietu SQLite-utils dla języka Python oraz biblioteki IronPDF w celu zarządzania bazą danych SQLite i generowania dokumentów PDF. Poniżej znajduje się szczegółowe wyjaśnienie działania kodu:

  1. Inicjalizacja bazy danych:

    • Inicjuje bazę danych SQLite o nazwie "mydatabase.db" przy użyciu biblioteki SQLite-utils.
  2. Tworzenie tabeli:

    • Definiuje schemat tabeli z kolumnami id, name i age.
    • Tworzy tabelę o nazwie "users" w bazie danych SQLite przy użyciu zdefiniowanego schematu.
  3. Wstawianie danych:

    • Wstawia wiele rekordów do tabeli "users" przy użyciu SQLite-utils.
  4. Wysyłanie zapytań o dane:

    • Pobiera wszystkie rekordy z tabeli "users" i tworzy reprezentację danych w formacie HTML.
  5. Generowanie plików PDF:
    • Wykorzystuje IronPDF do tworzenia dokumentów PDF.
    • Tworzy zawartość HTML dla dokumentu PDF, w tym nagłówki i dane tabel pobrane z bazy danych SQLite.
    • Zapisuje wygenerowany dokument PDF jako "DemoSqliteUtils.pdf".

Ogólnie rzecz biorąc, ten skrypt pokazuje, jak wykorzystać SQLite-utils do zadań związanych z zarządzaniem bazami danych, takich jak tworzenie tabel, wstawianie danych i wysyłanie zapytań, w połączeniu z IronPDF do generowania dokumentów PDF z dynamicznej treści pochodzącej z bazy danych SQLite w aplikacjach napisanych w języku Python.

Wynik

sqlite utils Python (Jak to działa dla programistów): Rysunek 2 – Przykładowy wynik konsoli

PDF

sqlite utils Python (Jak to działa dla programistów): Rysunek 3 – Przykładowy plik PDF wygenerowany przy użyciu IronPDF w celu utworzenia raportu

Licencja IronPDF

IronPDF działa na licencji Python. IronPDF for Python oferuje bezplatną licencję probną, aby umożliwić użytkownikom przetestowanie jego rozbudowanych funkcji przed zakupem.

Umieść klucz licencyjny na początku skryptu przed użyciem pakietu IronPDF:

from ironpdf import License

# Apply your license key
License.LicenseKey = "key"
from ironpdf import License

# Apply your license key
License.LicenseKey = "key"
PYTHON

Wnioski

SQLite-utils to potężne narzędzie do pracy z bazami danych SQLite. Oferuje zarówno interfejs CLI, jak i bibliotekę Python. Niezależnie od tego, czy potrzebujesz szybko przetwarzać dane z wiersza poleceń, czy zintegrować operacje SQLite z aplikacjami w języku Python, SQLite zapewnia elastyczne i łatwe w użyciu rozwiązanie.

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podrę...

Czytaj więcej

Zespol wsparcia Iron

Jestesmy online 24 godziny, 5 dni w tygodniu.
Czat
Email
Zadzwon do mnie