푸터 콘텐츠로 바로가기
PYTHON 도움말

sqlite 유틸리티 Python (개발자를 위한 작동 방식)

SQLite-utils Python 패키지는 SQLite 데이터베이스 작업을 위한 Python 유틸리티 함수들을 포함하는 다재다능한 도구입니다. 이 소프트웨어는 명령줄 인터페이스(CLI)와 Python 라이브러리를 제공하여 SQLite 데이터베이스를 쉽게 생성, 조작 및 쿼리할 수 있도록 합니다. 이제 그 기능들을 자세히 살펴보고 코드 예제를 몇 가지 보겠습니다. 이 글 후반부에서는 Iron Software 에서 개발한 PDF 생성 라이브러리인 IronPDF 에 대해 자세히 살펴보겠습니다.

SQLite-utils 개요

SQLite-utils는 SQLite 데이터베이스 조작과 관련된 다양한 작업을 간소화하도록 설계되었습니다. 주요 특징은 다음과 같습니다.

  • 데이터베이스 생성 및 관리: 새로운 데이터베이스와 테이블을 간편하게 생성할 수 있습니다.
  • 데이터 삽입 및 조회: JSON 데이터, CSV 또는 TSV 파일을 삽입하고 SQL 쿼리를 실행합니다.
  • 전문 검색: 전문 검색 쿼리를 구성하고 실행합니다.
  • 스키마 변환: SQLite의 ALTER TABLE 명령이 직접 지원하지 않는 스키마 변경을 수행합니다.
  • 데이터 정규화: 데이터를 정규화하기 위해 열을 별도의 테이블로 추출합니다.
  • 사용자 지정 SQL 함수: 사용자 지정 SQL 함수를 추가하려면 플러그인을 설치하세요.

설치

pip를 사용하여 SQLite-utils를 설치할 수 있습니다.

pip install sqlite-utils
pip install sqlite-utils
SHELL

또는 macOS에서 Homebrew를 사용하는 경우:

brew install sqlite-utils
brew install sqlite-utils
SHELL

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
# Create a new database and insert data from a CSV file
sqlite-utils insert dogs.db dogs dogs.csv --csv
SHELL

데이터 조회

아래 명령어는 데이터베이스에서 SQL 쿼리를 수행하는 방법입니다.

# 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

목록 테이블

데이터베이스에 있는 모든 테이블과 각 테이블의 행 수를 나열하십시오.

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

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")
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)
# Run a query and fetch results
rows = db.query("SELECT * FROM dogs")
for row in rows:
    print(row)
PYTHON

전문 검색

테이블에서 전체 텍스트 검색을 활성화하고 검색 쿼리를 실행합니다.

# 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

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 플랫폼과 호환됩니다. 이 프로그램은 윈도우, 리눅스, macOS를 지원합니다.

편집 및 서명:

속성을 설정하고, 암호 및 권한으로 보안을 강화하고, PDF에 디지털 서명을 적용하세요.

페이지 템플릿 및 설정:

PDF 파일에 머리글, 바닥글, 페이지 번호 및 조정 가능한 여백을 추가하여 사용자 지정할 수 있습니다. 또한 사용자 지정 용지 크기와 반응형 레이아웃을 지원합니다.

표준 준수:

PDF/A 및 PDF/UA를 포함한 PDF 표준을 준수하고, UTF-8 문자 인코딩을 지원하며, 이미지, CSS, 글꼴 등의 자산을 관리합니다.

IronPDF 와 SQLite 유틸리티를 사용하여 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")
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

코드 설명

이 스크립트는 SQLite-utils Python 패키지와 IronPDF 라이브러리의 기능을 결합하여 SQLite 데이터베이스를 관리하고 PDF 문서를 생성합니다. 다음은 해당 코드가 수행하는 작업을 단계별로 설명한 것입니다.

  1. 데이터베이스 초기화:

    • SQLite-utils를 사용하여 "mydatabase.db"라는 이름의 SQLite 데이터베이스를 초기화합니다.
  2. 테이블 생성:

    • id, name, age 열로 테이블 스키마를 정의합니다.
    • 정의된 스키마를 사용하여 SQLite 데이터베이스에 "users"라는 이름의 테이블을 생성합니다.
  3. 데이터 삽입:

    • SQLite-utils를 사용하여 "users" 테이블에 여러 레코드를 삽입합니다.
  4. 데이터 조회:

    • "users" 테이블의 모든 레코드를 검색하여 해당 데이터의 HTML 표현을 생성합니다.
  5. PDF 생성:
    • IronPDF 사용하여 PDF 문서를 생성합니다.
    • SQLite 데이터베이스에서 가져온 헤더 및 테이블 데이터를 포함하여 PDF 문서용 HTML 콘텐츠를 구성합니다.
    • 생성된 PDF 문서를 "DemoSqliteUtils.pdf"라는 이름으로 저장합니다.

전반적으로 이 스크립트는 SQLite-utils를 사용하여 테이블 생성, 데이터 삽입 및 쿼리와 같은 데이터베이스 관리 작업을 수행하고, IronPDF 사용하여 SQLite 데이터베이스에서 가져온 동적 콘텐츠를 기반으로 Python 애플리케이션에서 PDF 문서를 생성하는 방법을 보여줍니다.

출력

sqlite utils Python (개발자를 위한 작동 방식): 그림 2 - 예제 콘솔 출력

PDF

sqlite utils Python (개발자를 위한 작동 방식): 그림 3 - IronPDF를 활용하여 보고서를 생성하는 예제 PDF 출력

IronPDF 라이선스

IronPDF Python 라이선스 키로 실행됩니다. IronPDF for Python은 사용자가 구매 전에 다양한 기능을 테스트해 볼 수 있도록 무료 평가판 라이선스 키를 제공합니다.

IronPDF 패키지를 사용하기 전에 스크립트 시작 부분에 라이선스 키를 배치하십시오.

from ironpdf import License

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

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

결론

SQLite-utils는 SQLite 데이터베이스 작업을 위한 강력한 도구입니다. 이 프로그램은 CLI와 Python 라이브러리를 모두 제공합니다. 명령줄에서 데이터를 신속하게 조작해야 하거나 SQLite 작업을 Python 애플리케이션에 통합해야 하는 경우, SQLite는 유연하고 사용하기 쉬운 솔루션을 제공합니다.

커티스 차우
기술 문서 작성자

커티스 차우는 칼턴 대학교에서 컴퓨터 과학 학사 학위를 취득했으며, Node.js, TypeScript, JavaScript, React를 전문으로 하는 프론트엔드 개발자입니다. 직관적이고 미적으로 뛰어난 사용자 인터페이스를 만드는 데 열정을 가진 그는 최신 프레임워크를 활용하고, 잘 구성되고 시각적으로 매력적인 매뉴얼을 제작하는 것을 즐깁니다.

커티스는 개발 분야 외에도 사물 인터넷(IoT)에 깊은 관심을 가지고 있으며, 하드웨어와 소프트웨어를 통합하는 혁신적인 방법을 연구합니다. 여가 시간에는 게임을 즐기거나 디스코드 봇을 만들면서 기술에 대한 애정과 창의성을 결합합니다.

아이언 서포트 팀

저희는 주 5일, 24시간 온라인으로 운영합니다.
채팅
이메일
전화해