Встроенная база данных для .net
-
22-08-2019 - |
Вопрос
Мне нужна встроенная база данных для одного из наших .net-приложений.
Эта база данных должна поддерживать sql (в отличие от Беркли).
Может кто подскажет какие варианты.
Решение
Основные варианты, на мой взгляд, следующие:
- SQLite
- SQL-сервер компактный (поддержка Linq)
- VistaDB (поддержка Linq)
- SharpHSQL
- Встроенный Жар-птица
- Блэкфиш SQL
Другие советы
Я просто хотел присоединиться к вам позже и сообщить дополнительную информацию о VistaDB.
Наш синтаксис SQL очень близок к синтаксису SQL Server, и мы включаем хранимые процедуры TSQL и CLR.
Запускается вместе с вашим приложением, и вам нужно развернуть только одну сборку как для 32-, так и для 64-разрядной версии (100% управляемый код).Вы не можете сделать это с помощью SQL CE, поскольку у вас есть разные неуправляемые сборки, которые необходимо развернуть.
Вы можете встроить VistaDB в свое приложение и даже объединить ее, изменить имя базы данных и т. д., чтобы полностью скрыть движок от ваших пользователей (некоторые люди очень в этом разбираются).
И да, он также может работать на Mono, поскольку это 100% управляемый код.Есть еще несколько проблем (включая машины, отличные от Intel Mono).
Полное раскрытие информации: я являюсь владельцем компании.
SQL Server Compact Edition — разумный выбор для компактной платформы .NET.я нашел Тайный код быть очень полезным сайтом для изучения SSCE.Он является MVP по SQL Server и специализируется на CE.
Взгляните на версию SQL Server Compact.Он работает внутри процесса, представляет собой один двоичный файл, хранит данные в одном файле и поддерживает параллелизм (в отличие от многих других встроенных баз данных, включая SQLite).Кроме того, он, вероятно, у вас уже есть, если вы используете Visual Studio.Наконец, его можно использовать и распространять бесплатно.
мне действительно нравится FirebirdSQL я (также упоминается CMS).Он может работать со встроенной библиотекой Windows DLL, для этого есть даже смешанный двоичный файл со встроенным драйвером ядра.Он хорошо работает с ActiveRecord и NHibernate.Большинство типов .Net легко сопоставляются.
Одним из преимуществ перед другими вариантами является то, что переключение в режим РСУБД — это всего лишь вопрос изменения строки запроса для использования сервера вместо встроенной версии.Вы также можете запустить его в Linux (к сожалению, не во встроенном режиме), если у вас есть желание использовать Mono в будущем.