앱 개발을 위한 레코드 저장, 쿼리 인터페이스, 마이그레이션, 데이터베이스 관찰 기능을 제공하는 Swift용 SQLite 툴킷입니다.
stephencelis/SQLite.swift
Apple 및 Linux 앱을 위해 쿼리 빌더와 타입이 지정된 데이터 접근 기능을 제공하는, SQLite3 기반의 타입 안전 Swift 레이어입니다.
- 스타
- 10,187
- 포크
- 1,612
- 열린 이슈
- 133
- 마지막 커밋
- 13일 전
어떤 프로젝트인가요?
SQLite.swift는 SQLite3 C API를 순수 Swift 인터페이스로 감쌉니다. SQL 문자열을 이어 붙이는 대신 타입이 적용된 표현식 빌더로 쿼리를 구성하므로, 열의 타입과 옵셔널 여부를 컴파일러가 검사합니다. 쿼리는 체이닝할 수 있고 지연 실행되며, 실행을 요청할 때만 실제로 수행됩니다.
필요한 경우 이 라이브러리는 준비된 문, 파라미터 바인딩, totalChanges 및 lastInsertRowid 같은 연결 속성 접근을 제공하는 얇고 Swift 친화적인 raw SQL 래퍼로도 사용할 수 있습니다. 스키마 조회 및 마이그레이션 도우미, 전문 검색 지원, WAL 저널링 설정, Swift Package Manager를 통한 SQLCipher 통합 기능도 포함합니다.
Swift Package Manager, CocoaPods, Carthage 또는 Xcode 하위 프로젝트로 설치할 수 있으며, 일부 제한 사항이 있지만 Linux에서도 실행됩니다.
핵심 기능
- 01옵셔널을 고려한 열 타입을 지원하는 타입 안전 SQL 표현식 빌더
- 02체이닝 가능하고 지연 실행되는 쿼리 API
- 03파라미터 바인딩을 지원하는 raw SQL 준비된 문
- 04스키마 조회 및 마이그레이션 도우미
- 05전문 검색 및 WAL 저널링 설정
- 06Swift Package Manager를 통한 SQLCipher 지원
활용 사례
- 컴파일 시점에 쿼리를 검사하면서 iOS 또는 macOS 앱의 로컬 데이터 저장
- Linux에서 SQLite에 데이터를 저장하는 Swift 서버 또는 명령줄 도구 개발
- Apple 플랫폼 앱에서 SQLCipher로 로컬 데이터베이스 암호화
빠른 시작
- 1
Package.swift에 SQLite.swift 의존성을 추가하세요
- 2
Swift Package Manager로 프로젝트를 빌드하세요
swift build
사용 전 알아둘 점
- prepare() 결과를 반복하면 각 단계에서 try!가 사용되므로, 반복 중 SQLite 오류가 발생하면 앱이 충돌합니다. 오류를 처리하려면 prepareRowIterator()를 사용하세요.
- Linux 지원에는 몇 가지 제한 사항이 있습니다.
포함된 컬렉션
토픽
자주 묻는 질문
- SQLite.swift은(는) 무엇인가요?
- Apple 및 Linux 앱을 위해 쿼리 빌더와 타입이 지정된 데이터 접근 기능을 제공하는, SQLite3 기반의 타입 안전 Swift 레이어입니다. SQLite.swift는 SQLite3 C API를 순수 Swift 인터페이스로 감쌉니다. SQL 문자열을 이어 붙이는 대신 타입이 적용된 표현식 빌더로 쿼리를 구성하므로, 열의 타입과 옵셔널 여부를 컴파일러가 검사합니다. 쿼리는 체이닝할 수 있고 지연 실행되며, 실행을 요청할 때만 실제로 수행됩니다.
- SQLite.swift은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- SQLite.swift은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- SQLite.swift은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. SQLite.swift의 마지막 커밋은 2026년 10월 25일입니다.
- SQLite.swift은(는) 어디에 사용할 수 있나요?
- 컴파일 시점에 쿼리를 검사하면서 iOS 또는 macOS 앱의 로컬 데이터 저장 Linux에서 SQLite에 데이터를 저장하는 Swift 서버 또는 명령줄 도구 개발 Apple 플랫폼 앱에서 SQLCipher로 로컬 데이터베이스 암호화
- SQLite.swift는 어떻게 설치하나요?
- Package.swift에 SQLite.swift 의존성을 추가하세요 Swift Package Manager로 프로젝트를 빌드하세요: swift build
- SQLite.swift은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/stephencelis/SQLite.swift
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
PostgreSQL, MySQL, SQLite, MariaDB에서 컴파일 시점에 쿼리를 검사하는 안전하고 확장 가능한 Rust ORM 및 쿼리 빌더입니다.
PostgreSQL, MySQL, SQLite, MongoDB 등 다양한 데이터베이스에 타입 안전한 접근을 제공하는 Node.js용 TypeScript ORM입니다.
SQL 데이터베이스 전반에서 테이블, 컬럼, 결과 타입을 자동 완성하는 타입 안전한 TypeScript SQL 쿼리 빌더입니다.
깔끔하고 직관적인 API로 일반적인 SQL 작업을 간편하게 처리하는 경량 단일 파일 PHP 데이터베이스 프레임워크입니다.
다양한 SQL 및 NoSQL 데이터베이스를 지원하고 Active Record와 Data Mapper 패턴을 모두 사용할 수 있는 Node.js 및 기타 JS 플랫폼용 TypeScript·JavaScript ORM입니다.