PYTHON ヘルプ

sqlite utils Python (開発者のための仕組み)

公開済み 2024年8月13日
共有:

イントロダクション

についてSQLite-utilsPythonパッケージはSQLiteデータベースを操作するためのPythonユーティリティ関数を含む多目的ツールです。 コマンドライン・インターフェイス(CLI)と Python ライブラリにより、SQLite データベースの作成、操作、クエリを簡単に行うことができます。 その特徴とコード例を見てみよう。 この記事の後半ではIronPDFによって開発されたPDF生成ライブラリである。Iron Software.

SQLite-utilsの概要

SQLite-utilsはSQLiteデータベースの操作に関連する様々なタスクを簡素化するように設計されています。 主要な機能には以下が含まれます:

  • データベースの作成と管理:新しいデータベースとテーブルを簡単に作成できます。
  • データの挿入とクエリー:JSONデータ、CSV、TSVファイルを挿入し、SQLクエリを実行します。
  • 全文検索:全文検索クエリの設定と実行。
  • スキーマ変換:SQLiteのALTER TABLEが直接サポートしないスキーマの変更を実行します。
  • データの正規化:データを正規化するために、列を別々のテーブルに抽出する。
  • カスタムSQL関数:カスタム SQL 関数を追加するプラグインをインストールします。

インストール

インストールすることができますSQLite-utilspipを使って:

pip install sqlite-utils

あるいは、macOSでHomebrewを使う場合:

brew install sqlite-utils
PYTHON

SQLite-utilsをCLIツールとして使う

CLIツールを使えば、コマンドラインから直接さまざまな操作を行うことができる。以下はその例である:

データベースの作成とデータの挿入

新しいSQLiteデータベースを作成し、CSVファイルからデータを挿入してみましょう:

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

データ照会

以下のコマンドは、データベースからSQLクエリーを実行する方法です:

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

リスト表

データベース内のすべてのテーブルを行数とともにリストアップする:

sqlite-utils tables dogs.db --counts
PYTHON

SQLite-utilsをPythonライブラリとして使う

SQLite-utils を Python ライブラリとして使用して、SQLite データベースとプログラムでやり取りすることもできます。

データベースの作成とデータの挿入

ここでは、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")
PYTHON

データ照会

SQLクエリーを実行し、結果を取得することができます:

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

全文検索

テーブルの全文検索と検索クエリを有効にします:

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

IronPDFの紹介

sqlite utils Python(開発者向けの仕組み):図1 - IronPDF:Python PDFライブラリ

IronPDFは、HTML、CSS、画像、JavaScriptを使用してPDFを作成、編集、署名するために設計された強力なPythonライブラリです。 商業利用レベルのパフォーマンスを、低メモリフットプリントで提供します。 主要な機能には次のものが含まれます:

HTMLからPDFへの変換:

HTMLファイル、HTML文字列、URLをPDFに変換。 例えば、Chrome PDFレンダラーを使用してウェブページをPDFとしてレンダリングします。

*クロスプラットフォームサポート:***。

.NET Core、.NET Standard、.NET Frameworkなど、さまざまな.NETプラットフォームに対応。 Windows、Linux、macOSに対応しています。

*編集と署名:***。

プロパティを設定し、パスワードとアクセス許可を使用してセキュリティを追加し、PDFに電子署名を適用します。

ページテンプレートと設定:

ヘッダー、フッター、ページ番号、調整可能な余白でPDFをカスタマイズできます。 さらに、カスタム用紙サイズやレスポンシブ・レイアウトにも対応している。

**規格コンプライアンス

PDF/A、PDF/UAを含むPDF標準に準拠し、UTF-8文字エンコーディングに対応し、画像、CSS、フォントなどのアセットを管理します。

IronPDFとSqlite Utilsを使ってPDFドキュメントを生成する。

import sqlite_utils
from ironpdf import * 
# Apply your license key
License.LicenseKey = "key"
db = sqlite_utils.Database("mydatabase.db")
# Define a table schema
schema = {
    "id": int,
    "name": str,
    "age": int
}
# Create a table
db["users"].create(schema)
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
results = list(db["users"].rows)
# Filter records
filtered_results = list(db["users"].rows_where("age > ?", [30]))
# Display all records
rows = db.query("SELECT * FROM users")
renderer = ChromePdfRenderer()
# Create a PDF from a HTML string using Python
content = "<h1>Awesome IronPDF with Sqlite-Utils</h1>"
content += "<p>table data</p>"
for row in rows:
    print(row)
    content += "<p>"+str(row)+"</p>"
pdf = renderer.RenderHtmlAsPdf(content)    
    # Export to a file or Stream
pdf.SaveAs("DemoSqliteUtils.pdf")
PYTHON

コードの説明

このスクリプトはSQLite-utils PythonパッケージとIronPDFライブラリの機能を組み合わせてSQLiteデータベースを管理し、PDFドキュメントを生成します。 以下は、このコードが何をするのかを段階的に分解したものである:

  1. **データベースの初期化

    • SQLite-utils.2 を使用して "mydatabase4.db" という名前の SQLite データベースを初期化します。 **テーブルの作成
    • テーブルスキーマを定義します。
    • 定義されたスキーマを使用して、SQLiteデータベースに "users "という名前のテーブルを作成する。 **データ挿入
    • SQLite-utils.4を使って "users "テーブルに複数のレコードを挿入する。 **データクエリ
    • users "テーブルから全てのレコードを取得し、"results.˶"に格納する。
    • ageカラムが30を超えるレコードをフィルタリングし、"filtered_results.age "に格納します。 PDF Generation:
    • IronPDFを利用してPDFドキュメントを作成します。
    • ヘ ッ ダ と SQLite デー タ ベース か ら 取得 し た表デー タ を含む、 PDF 文書のための HTML コ ン テ ン ツ を構築 し ます。
    • 生成されたPDFドキュメントを "DemoSqliteUtils.pdf "として保存します。

    全体として、このスクリプトは、PythonアプリケーションでSQLiteデータベースから取得した動的コンテンツからPDFドキュメントを生成するIronPDFと組み合わせて、テーブルの作成、データの挿入、クエリのようなデータベース管理タスクのためにSQLite-utilsを活用する方法を示します。

出力

sqlite utils Python(開発者向けの仕組み):図2 - コンソール出力の例

PDF

sqlite utils Python(開発者向けの仕組み):図3 - IronPDFを使ったPDF出力例

IronPDFライセンス

IronPDFはPythonのライセンスキーで動作します。 IronPDF for Pythonは購入前にその豊富な機能を試すことができる無料トライアルライセンスキーを提供しています。

IronPDFパッケージを使用する前に、ライセンスキーをスクリプトの最初に置いてください:

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

結論

Sqlite-utilsはSQLiteデータベースを操作するための強力なツールです。 CLIとPythonライブラリの両方を提供している。 コマンドラインから素早くデータを操作する必要がある場合でも、SQLiteの操作をPythonアプリケーションに統合する必要がある場合でも、SQLiteは柔軟で使いやすいソリューションを提供します。

< 以前
PyYAML (開発者のための仕組み)
次へ >
ElementTreeを使ったPythonでのXML解析

準備はできましたか? バージョン: 2024.11.1 新発売

無料 pip インストール ライセンスを表示 >