Функциональность базы данных с приложением WPF:SQLite, SQL CE, другое?[закрыто]
-
09-06-2019 - |
Вопрос
Я хочу расширить приложение WPF функциями базы данных.Какой механизм базы данных вы бы предложили и почему?SQLite, SQL CE, другое?
Решение
В зависимости от использования приложений, Я бы рекомендовал использовать SQL Lite потому что он не требует установки какого-либо другого программного обеспечения (SQL CE или Express и т. д.).обычно требуется отдельная установка).
Список наиболее важных преимуществ SQL Lite можно найти по ссылке поставщика внизу этого поста:
SQLite-это небольшая библиотека C, которая реализует автономный, встроенный, нулевой конфигурационный двигатель SQL Database.Особенности включают в себя:
- Ноль конфигурации - настройка или администрирование не требуется.
- Реализует большую часть SQL92.(Функции не поддерживаются)
- Полная база данных хранится в одном файле диска.
- Файлы базы данных могут быть свободно обменом между машинами с различными заказами в байтах.
- Поддерживает базы данных до 2 терабайт (2^41 байт) по размеру.
- Небольшой размер кода:Менее 30 тыс. Строков C кода C, менее чем 250 КБ кодовое пространство (GCC на i486)
- Быстрее, чем популярные двигатели базы данных клиента/сервера для большинства распространенных операций.
- Простой и удобный API.
- Автономный:нет внешних зависимостей.
- Исходники находятся в открытом доступе.Используйте для любых целей.
Поскольку вы используете WPF, я могу предположить, что вы используете как минимум .NET 3.0.Затем я бы порекомендовал перейти на .NET 3.5 SP1 (того же размера, что и .NET 3.5, но включает ряд улучшений производительности), который включает LINQ.
Однако при использовании SQLite вам потребуется использовать следующий поставщик SQLite, который должен обеспечивать поддержку LINQ: Поставщик ADO.NET с открытым исходным кодом для ядра базы данных SQLite.
Другие советы
Я использовал SQL Compact Edition со своим приложением WPF и доволен своим решением.Все просто работает (поскольку WPF и SQLCE оба являются MS, они прекрасно работают вместе), а установка среды выполнения достаточно мала и достаточно плавна для моих нужд.Я создал и изменил базу данных через Visual Studio.
Чтобы высказать иное мнение, мы использовали SQL Compact Edition в течение прошлого года и в целом остались довольны.Конфигурация проста и ведет себя очень похоже на обычную базу данных MS SQL.Не хватает таких вещей, как триггеры и хранимые процедуры, но в SQL 3.5 CE есть практически все, что нам может понадобиться.Для установки потребуется около 2 МБ .dll.Он предлагает шифрование базы данных, транзакции и поддерживает конструктор типизированных наборов данных VS (в версии 3.1 были некоторые проблемы, но CE 3.5 великолепен!).
Библиотеки SQL CE DLL могут быть упакованы в ваше собственное приложение и не требуют отдельной установки.Но MS предоставляет установочный пакет по умолчанию, если вы не хотите изучать настройку... и т. д.
Более того, SQL CE поддерживает частное развертывание.
SQLite — действительно хороший продукт, хотя мне не хватает функций PostgreSQL.Существуют и другие базы данных, особенно не SQL, которые вы можете рассмотреть, например Berkeley DB.
/Аллан
Я согласен, что SQLite — лучший вариант.Subsonic 2.1 теперь также включает поддержку SQLite.