Какую базу данных использовать в .NET - PullRequest
1 голос
/ 01 апреля 2010

Я пишу программу на C #, которая должна хранить несколько таблиц данных на компьютере пользователя и загружать их обратно, когда он перезапускает программу: до 10000 записей, состоящих из текста и целых чисел. Я не хочу использовать файл CSV, и у меня возникли проблемы с SQLite. Есть ли другие хорошие варианты, чтобы попробовать?

Ответы [ 8 ]

11 голосов
/ 01 апреля 2010

Почему бы просто не сериализовать таблицы данных непосредственно в двоичный файл и сохранить их на диск. Загрузка будет так же проста, как и повторная обработка данных?

10 голосов
/ 01 апреля 2010

Эквивалентом Microsoft для SQLite является SQL Server Compact . Это свободно. Вам просто нужно перераспределить некоторые библиотеки с вашим приложением. Конечный пользователь не будет вынужден устанавливать полноценный продукт БД, такой как SQL Server Express или MySQL, для запуска вашего приложения.

5 голосов
/ 01 апреля 2010

Мне нравится выпуск SQL Server Express.

2 голосов
/ 01 апреля 2010

Поместите ваши DataTables в DataSet (если они еще не созданы) и используйте метод DataSet WriteXml, чтобы сохранить содержимое в файл XML, и ReadXml, чтобы восстановить ваш DataSet.

Если ваше приложение уже написано для работы с DataTables (т.е. вы используете Sort, Select и т. Д. Непосредственно в DataTable), это ваше самое простое и простое решение. Полученный XML-файл может быть слишком большим для ваших морских свиней (поскольку XML довольно многословен), но, вероятно, не содержит 10 000 строк.

2 голосов
/ 01 апреля 2010

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

1 голос
/ 01 апреля 2010

Лично я люблю SQLite (в сочетании с провайдером .NET с открытым исходным кодом, System.Data.SQLite ). Я не уверен, какие у вас проблемы с SQLite, но, возможно, вам поможет переход на простой в использовании поставщик.

1 голос
/ 01 апреля 2010

SQL Express будет работать. Вы можете использовать Linq to SQL и легко получать доступ к своим данным.,

0 голосов
/ 01 апреля 2010

Firebird отлично работает с dotNet и может использоваться для этого тоже.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...