Toolkit Swift para bancos de dados SQLite, com persistência de registros, interface de consultas, migrações e observação do banco para desenvolvimento de apps.
stephencelis/SQLite.swift
Uma camada Swift com segurança de tipos sobre o SQLite3, com query builder e acesso tipado a dados para apps Apple e Linux.
- Estrelas
- 10,187
- Forks
- 1,612
- Issues abertas
- 133
- Último commit
- há 13 dias
O que é?
SQLite.swift encapsula a API C do SQLite3 em uma interface escrita totalmente em Swift. Em vez de concatenar strings SQL, os desenvolvedores constroem consultas com um builder de expressões tipado, permitindo que o compilador verifique os tipos e a opcionalidade das colunas. As consultas podem ser encadeadas e são avaliadas sob demanda, apenas quando executadas.
Quando necessário, a biblioteca também funciona como um wrapper fino e compatível com Swift para SQL puro, com prepared statements, vinculação de parâmetros e acesso a propriedades da conexão, como totalChanges e lastInsertRowid. Ela inclui recursos auxiliares para consultar o schema e fazer migrações, suporte a busca full-text, configuração do journaling WAL e integração com SQLCipher via Swift Package Manager.
Pode ser instalada via Swift Package Manager, CocoaPods, Carthage ou como um subprojeto do Xcode, e funciona no Linux com algumas limitações.
Recursos principais
- 01Builder de expressões SQL com segurança de tipos e tipos de coluna que levam a opcionalidade em conta
- 02API de consultas encadeável e executada sob demanda
- 03Prepared statements para SQL puro com vinculação de parâmetros
- 04Recursos auxiliares para consultar o schema e fazer migrações
- 05Busca full-text e configuração do journaling WAL
- 06Suporte ao SQLCipher via Swift Package Manager
Casos de uso
- Persistir dados locais em um app iOS ou macOS com consultas verificadas pelo compilador
- Criar um servidor Swift ou uma ferramenta de linha de comando que armazene dados em SQLite no Linux
- Criptografar um banco de dados local com SQLCipher em um app para plataformas Apple
Início rápido
- 1
Adicione a dependência SQLite.swift ao Package.swift
- 2
Compile o projeto com o Swift Package Manager
swift build
Antes de usar
- Ao iterar os resultados de prepare(), cada etapa usa try!, então um erro do SQLite durante a iteração faz o app travar. Use prepareRowIterator() para tratar esses erros.
- O suporte ao Linux tem algumas limitações.
Em coleções
Tópicos
Perguntas frequentes
- O que é SQLite.swift?
- Uma camada Swift com segurança de tipos sobre o SQLite3, com query builder e acesso tipado a dados para apps Apple e Linux. SQLite.swift encapsula a API C do SQLite3 em uma interface escrita totalmente em Swift. Em vez de concatenar strings SQL, os desenvolvedores constroem consultas com um builder de expressões tipado, permitindo que o compilador verifique os tipos e a opcionalidade das colunas. As consultas podem ser encadeadas e são avaliadas sob demanda, apenas quando executadas.
- SQLite.swift é gratuito? Qual é a licença?
- SQLite.swift é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- SQLite.swift ainda é mantido?
- Manutenção ativa. O último commit de SQLite.swift foi em 25 de out. de 2026.
- Para que posso usar SQLite.swift?
- Persistir dados locais em um app iOS ou macOS com consultas verificadas pelo compilador Criar um servidor Swift ou uma ferramenta de linha de comando que armazene dados em SQLite no Linux Criptografar um banco de dados local com SQLCipher em um app para plataformas Apple
- Como instalar SQLite.swift?
- Adicione a dependência SQLite.swift ao Package.swift Compile o projeto com o Swift Package Manager: swift build
- Onde consigo SQLite.swift?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/stephencelis/SQLite.swift
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
ORM seguro e extensível e query builder para Rust, com verificação de consultas em tempo de compilação para PostgreSQL, MySQL, SQLite e MariaDB.
ORM para Node.js e TypeScript que oferece acesso type-safe a bancos de dados como PostgreSQL, MySQL, SQLite e MongoDB.
Um construtor de consultas SQL para TypeScript com segurança de tipos e autocomplete para tabelas, colunas e tipos de resultado em vários bancos de dados SQL.
Um framework de banco de dados PHP leve, distribuído em um único arquivo, que simplifica operações SQL comuns com uma API limpa e intuitiva.
ORM para TypeScript e JavaScript no Node.js e em outras plataformas JS, compatível com os padrões Active Record e Data Mapper e diversos bancos SQL e NoSQL.