Вопрос

Я видел ссылки на VistaDB на протяжении многих лет и на такие инструменты, как SQLite, Firebird, MS SQL и т. д.ал.У меня никогда не было причин думать об этом.

Каковы преимущества оплаты VistaDB по сравнению с использованием другой технологии?Вещи, о которых я подумал:
1.Поддержка компактной платформы.SQLite+MSSQL поддерживают CF.
2.Нужен путь перехода к «более надежной» системе.Firebird+MSSQL.
3.Нужны более продвинутые функции, такие как триггеры.Firebird+MSSQL

Это было полезно?

Решение

Среда выполнения клиента VistaDB бесплатна.Время выполнения никогда не истечет в 3 часа ночи, как вы выразились.Таким образом лицензируются только инструменты разработчика.Вам нужна 1 лицензия на каждого разработчика, это просто.Мы даже предлагаем очень недорогую версию Lite без инструментов Visual Studio.

Некоторые другие преимущества

100% управляемый код - в движке нет взаимодействия или других неуправляемых вызовов.Для некоторых это имеет большое значение, а другим все равно.

Доступ к реестру не требуется - Большинству других баз данных процедур требуется доступ к реестру для поиска родительского контроля или разрешений.VistaDB делает только то, что вы ей скажете, и даже будет работать в режиме среднего доверия.

Развертывание XCopy для среды выполнения и вашей базы данных (один файл).Вы можете скопировать свое приложение, среду выполнения и базу данных и запустить их.На машине не нужно ничего устанавливать или настраивать, никаких особых привилегий не требуется (мы можем работать со средним уровнем доверия или выше).

Изолированное хранилище - Вы можете поместить всю свою базу данных в изолированное хранилище и запускать ее напрямую оттуда.Это позволяет очень легко создавать безопасные приложения с одним щелчком мыши, которые пишут базы данных в дружественной к домену форме для корпоративных сред.Нет необходимости хранить пользовательские данные на общем диске или беспокоиться о сопоставлении разрешений.

Триггеры CLR/процессы CLR - Вы можете написать код CLR и использовать его в качестве триггеров или хранимых процедур.Совсем недавно мы внесли изменения, которые еще больше упрощают поддержку одной сборки CLR, которая может работать как в VistaDB, так и в SQL Server 2005/2008.

Процессы T-SQL - Процессы VistaDB T-SQL совместимы с SQL Server 2005/2008.Любая процедура, которая работает в нашем движке, будет работать и в SQL Server.Это не означает, что все, что там работает, будет перенесено на нас.Мы являемся подмножеством функций SQL Server.Но мы также являемся единственным способом запускать процедуры T-SQL без SQL Server (SQL CE не может этого сделать).

Лично я считаю, что одной из самых важных особенностей является возможность позже перейти на SQL Server.Все типы VistaDB, синтаксис, процедуры CLR, процедуры T-SQL и т. д. будут работать на SQL Server.(Однако вы не можете перенести все, начиная с SQL Server, в VistaDB, это подмножество)

32/64-битное развертывание — VistaDB — это развертывание одной сборки, работающее как на 32-, так и на 64-разрядной версии без изменений.SQL CE требует двух разных сред выполнения в зависимости от ОС и вообще не может работать под IIS. В Access нет 64-битной среды выполнения, а самую последнюю 32-битную среду выполнения можно развернуть только через MSI.В 32-битной версии Windows есть среда выполнения, а в 64-битной — нет.

Реляционная целостность - VistaDB также фактически применяет ваши ограничения и внешние ключи.Вы можете выполнять определенные каскадные операции обновления и удаления.Человек, который прокомментировал, что мы похожи на SQLITE, в этом отношении ошибается.Они анализируют ограничения, но не обеспечивают их соблюдение.

РЕДАКТИРОВАТЬ:Теперь у них есть поддержка FK в SQLite.Но они не компилируются по умолчанию и не используют тот же синтаксис, что и SQL Server.

Среднее доверие — Возможность работы на веб-сервере со средним уровнем доверия — еще одна функция, которая многих не волнует, но это имеет большое значение.Многие сторонние элементы управления даже не могут работать в режиме среднего доверия.Мы можем запустить весь движок в среде Medium Trust, поскольку мы стремимся к 100% управляемому коду и требуем минимальному количеству разрешений.

- Полное раскрытие - Я владелец VistaDB, поэтому могу быть предвзятым.:)

Другие советы

Ну, главное, что это чистый управляемый код - чего бы он ни стоил;он работает не только на типичных компьютерах Windows, работающих под управлением .NET, но работает везде, где вы запускаете Compact Framework, и даже работает на Мононуклеоз.Вот несколько примечательных пунктов с их домашней страницы:

  • Небольшой размер < 1 МБ, действительно встроенный ZeroClick
  • Типы данных, совместимые с Microsoft SQL Server 2005, и синтаксис T-SQL
  • Ни одно из ограничений SQL CE.
  • Однопользовательский, многопользовательский локальный или с использованием общей сети.
  • Частично доверенный виртуальный хостинг не является проблемой.
  • Распространение без лицензионных отчислений: развертывание SQL Server на одном процессоре стоит дороже, чем лицензия на сайт VistaDB!

Стоит отметить, что компания Роба Ховарда, умный, использует ее в качестве базы данных по умолчанию для своего нового программного обеспечения CMS, "Граффити."

Я играл с этим тут и там, но еще не придумал ничего против него.

Для меня самой интересной особенностью VistaDB является то, что ее можно запускать в среде со средним уровнем доверия.Это делает его идеальным решением для создания небольших и средних веб-сайтов .NET, которые можно развернуть на сервере путем копирования и вставки (развертывание x-copy).

И почти все провайдеры общего хостинга Windows (например, GoDaddy) не позволяют запускать ваши веб-сайты в режиме полного доверия.А также не будет устанавливать для вас какие-либо сторонние двоичные файлы в GAC, такие как System.Data.SQLite.dll, если вы, например, хотите использовать SQLite.

Я раньше не видел VistaDB, выглядит довольно круто.

Обновлять: Получил комментарий от кого-то из VistaDB - их модель обновления предназначена только для получения новых версий.Ваши старые устройства не перестанут работать, если истечет срок действия вашей лицензии, и это полезно знать.

Сохраняя исходный пост здесь, как ИМХО, о предупреждении об истечении срока действия лицензий на программное обеспечение все же стоит подумать, хотя сама VistaDB в порядке.


Он определенно кажется «более функциональным», чем SQLite, но я не вижу в нем ничего, что могло бы оправдать стоимость.Кажется, на сайте указано, что вы можете купить одну лицензию за 279 долларов, но подразумевается, что это всего лишь подписка на 1 год.Придется ли вам в следующем году платить еще 279 долларов, чтобы ваш сайт не рухнул?

Если да, не забудьте учесть в «стоимости» то, сколько неудобств это будет, когда вам позвонят в 3 часа ночи (по закону Мерфи, всегда 3 часа ночи) от ваших паникующих клиентов, потому что срок действия их лицензии VistaDB истек :-(

У меня был такой опыт работы с некоторым программным обеспечением с истекающим сроком действия, и это никогда не было хорошо.Вы можете отправлять своим клиентам электронные письма и сообщения и мигать всем их экраном красным, говоря: «ВАМ НУЖНО ПОЛУЧИТЬ НОВУЮ ЛИЦЕНЗИЮ ДО СЛЕДУЮЩЕЙ НЕДЕЛИ», и они все равно никогда этого не сделают, а вы все равно будете чувствовать боль в 3 часа ночи, когда это произойдет. истекает.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top