2009-03-18 3 views
4

Какая база данных вы бы использовали для проекта с открытым исходным кодом?База данных для проекта с открытым исходным кодом

Я ищу что-то, у которого практически нет установки, требуемой конечным пользователем.

Обновление: Размер базы данных будет относительно небольшим (менее 100 000 записей). Приложение будет написано на C#.

+0

Это должно быть отмечено как Community Wiki, которое вы можете установить с помощью инструментов редактирования при редактировании вопроса. –

+0

Довольно скудное описание ... не могли бы вы уточнить, пожалуйста? На каком языке вы кодируете? Ожидаете ли вы, что БД будет расти? На сколько записей (сотни, тысячи, миллионы)? – Seb

ответ

13

Если вы ищете для встроенной базы данных (я предполагаю, что вы делаете, если вы просите что-то легкое для конечного пользователя), то SQLite является the most widely deployed SQL database в мир.

В зависимости от того, какой язык вы используете, you might need appropriate wrapper для библиотеки SQLite.

Обновление: Для .NET лучшей оболочкой для SQLite является System.Data.SQLite.dll from phxsoftware.

3

Если это веб-приложение с PHP, то MySQL ... он установлен практически везде, где установлен PHP (это почти каждый хост).

Если это не так ... консультируйтесь другие ответы :)

7

SQLite хорошо, если вы хотите SQL-Queryable DB:

http://www.sqlite.org/

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

3

Это зависит от того, насколько тяжелая работа должна делать эта база данных, но я думаю, что стоит взглянуть на SQLite. Это удивительный маленький кусок кода C/C++, он распространяется под лицензией общественного домена (это означает, что вы можете буквально делать с ним все, что хотите, в том числе перепродавать его).

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

2

Пойдите с SQLite. Конечный пользователь не нуждается в какой-либо установке. Это просто работает.

0

Вы смотрите на SQL Server Express Это не с открытым исходным кодом, но он бесплатный. Я большой поклонник SQLite, но если вы в мире .net и хотите использовать стек microsoft, это может быть лучшим выбором. Он предоставляет некоторые вещи, такие как T-SQL и сильную систему типов, которую SQLite не предоставляет. Он имеет ограничения производительности и размера db, не найденные во всех версиях SQL Server, но это, вероятно, не имеет значения для вашего приложения.

0

Я бы добавил комментарии относительно SQLite. Это здорово для того, что это такое - и для большинства маленьких, без установки DB, он работает очень хорошо.

Есть еще пара других вариантов.

Firebird - один вариант. Он имеет довольно впечатляющий список функций, а также включает в себя провайдер .net (хотя и в бета-версии).

Другой вариант, хотя и не с открытым исходным кодом, равен VistaDB. Это 100% -ый управляемый вариант, в отличие от SQLite и Firebird (и большинства других БД) и имеет множество преимуществ. Это вполне соответствует синтаксису MS SQL, поддерживает хранимые процедуры и многие другие приятные функции. У них есть «Экспресс-версия», которая бесплатна и может использоваться в проектах с открытым исходным кодом.

0

Это будет зависеть от того, что вы подразумеваете под «конечным пользователем» Как говорили другие, SQLite - отличный выбор, если вы ищете что-то встраиваемое или для использования на рабочем столе. Если вы думаете о каком-то веб-приложении, я бы сказал либо MySQL, либо PostgreSQL, так как они обеспечат лучшую производительность и смогут обрабатывать большой набор данных более естественно.

0

Если это только окна Sql Server Compact Edition - это хороший выбор для небольших приложений. Он свободно распространяемый.

Смежные вопросы