Типобезопасный Swift-слой над SQLite3 для построения запросов и работы с данными в приложениях для Apple-платформ и Linux.
groue/GRDB.swift
Набор инструментов на Swift для работы с SQLite: сохранение записей, интерфейс запросов, миграции и отслеживание изменений в базе данных приложений.
- Звёзды
- 8,726
- Форки
- 1,108
- Открытые issues
- 13
- Последний коммит
- 3 дня назад
Что это?
GRDB.swift — библиотека на Swift для сохранения данных приложения в базах SQLite. Она позволяет связывать структуры и классы Swift с таблицами и использовать готовые методы для выборки и сохранения данных. Это избавляет от необходимости писать SQL и обрабатывать строки результата для типовых операций, но при необходимости вы по-прежнему можете писать SQL-запросы напрямую.
Библиотека предоставляет интерфейс запросов на Swift, систему миграций для изменения схемы между выпусками приложения и поддержку полнотекстового поиска. Отслеживание изменений в базе данных отправляет уведомления при изменении сохранённых значений и готово к интеграции со Swift concurrency, Combine и RxSwift. Для подключения к базе данных доступны DatabaseQueue и DatabasePool; последний использует режим WAL, позволяющий одновременно читать и записывать данные.
GRDB поддерживает iOS, macOS, tvOS и watchOS. Установить библиотеку можно через Swift Package Manager, CocoaPods или вручную. Сопутствующие библиотеки обеспечивают интеграцию со SwiftUI и снимки содержимого базы данных для тестирования.
Ключевые возможности
- 01Связывайте структуры и классы Swift с таблицами и используйте встроенные методы для выборки и сохранения данных.
- 02Интерфейс запросов на Swift для построения SQL-запросов, а также возможность писать SQL напрямую с безопасной привязкой аргументов.
- 03Миграции схемы для изменения базы данных между версиями приложения.
- 04Отслеживание изменений в базе данных с уведомлениями, поддержкой Combine, RxSwift и асинхронных последовательностей.
- 05Типы подключений DatabaseQueue и DatabasePool; режим WAL позволяет одновременно читать и записывать данные.
- 06Полнотекстовый поиск и опциональное шифрование с помощью SQLCipher.
Сценарии использования
- Сохранение пользовательских данных и моделей в приложении для iOS или macOS.
- Отслеживание изменений в базе данных, чтобы представления SwiftUI или UIKit всегда отображали актуальные данные.
- Управление изменениями схемы между выпусками приложения с помощью миграций.
- Разработка приложений с приоритетом офлайн-работы, которые хранят данные локально в SQLite.
Быстрый старт
- 1
Добавьте GRDB в проект с помощью Swift Package Manager, указав URL репозитория
- 2
Импортируйте GRDB и откройте подключение к базе данных
Что важно знать
- Поддерживаются платформы Apple (iOS, macOS, tvOS, watchOS); требуется Swift 6.1 или более поздняя версия.
- Carthage не поддерживается, а новые версии нельзя публиковать в CocoaPods, поэтому для последующих выпусков потребуется обходное решение с веткой или тегом git.
В подборках
Темы
Частые вопросы
- Что такое GRDB.swift?
- Набор инструментов на Swift для работы с SQLite: сохранение записей, интерфейс запросов, миграции и отслеживание изменений в базе данных приложений. GRDB.swift — библиотека на Swift для сохранения данных приложения в базах SQLite. Она позволяет связывать структуры и классы Swift с таблицами и использовать готовые методы для выборки и сохранения данных. Это избавляет от необходимости писать SQL и обрабатывать строки результата для типовых операций, но при необходимости вы по-прежнему можете писать SQL-запросы напрямую.
- GRDB.swift можно использовать бесплатно? Какая у него лицензия?
- GRDB.swift распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- GRDB.swift всё ещё поддерживается?
- Активно поддерживается. Последний коммит в GRDB.swift — 5 нояб. 2026 г..
- Для чего можно использовать GRDB.swift?
- Сохранение пользовательских данных и моделей в приложении для iOS или macOS. Отслеживание изменений в базе данных, чтобы представления SwiftUI или UIKit всегда отображали актуальные данные. Управление изменениями схемы между выпусками приложения с помощью миграций. Разработка приложений с приоритетом офлайн-работы, которые хранят данные локально в SQLite.
- Как установить GRDB.swift?
- Добавьте GRDB в проект с помощью Swift Package Manager, указав URL репозитория Импортируйте GRDB и откройте подключение к базе данных
- Где скачать GRDB.swift?
- Исходный код и инструкции по установке — на GitHub: https://github.com/groue/GRDB.swift
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
ORM для TypeScript и JavaScript, работающий в Node.js и других JS-средах и поддерживающий паттерны Active Record и Data Mapper для множества SQL- и NoSQL-баз данных.
Безопасный и расширяемый ORM и конструктор запросов для Rust с проверкой запросов во время компиляции для PostgreSQL, MySQL, SQLite и MariaDB.
Swift-библиотека, которая предоставляет безопасный по типам и потокам API для Apple Core Data в приложениях для iOS, macOS, watchOS и tvOS.
Swift-пакет для работы с публичным API OpenAI на платформах Apple и Linux, совместимый со многими альтернативными провайдерами.
Бесплатный нативный клиент для баз данных с открытым исходным кодом на macOS и iOS: поддерживает SQL- и NoSQL-БД, встроенный AI-чат и MCP-сервер.