Лучший дизайн базы данных для небольших проектов в приложении C # - PullRequest
4 голосов
/ 28 января 2011

Проблема в том, что я получил запрос на хобби для маленькой программы. Будет сделано на Windows, с Visual C #. Насколько я понимаю, для этого потребуется база данных, и я не знаю, с чего начать, в основном из-за требований:

  1. Он будет содержать небольшие элементы данных, но чертовски много из них. Три таблицы с множеством строк, но может быть только 2 или 3 столбца. Данные будут читаться гораздо чаще, чем записываться.

  2. Чтение должно быть быстрым.

  3. Самый важный момент: я должен иметь возможность легко развернуть систему с моим приложением, не требуя от конечного пользователя что-либо устанавливать дальше. Кроме того, проблем с лицензией быть не должно, пожалуйста.

Поскольку я буду работать с Linq, я также рассмотрел XML, может ли это быть альтернативой?

Спасибо за чтение.

Ответы [ 5 ]

5 голосов
/ 28 января 2011

Оформить SQLServer Compact Edition . Должно быть именно то, что вам нужно.

0 голосов
/ 29 мая 2013

Проверьте базу данных Валентина (www.valentina-db.com). Тебе понравится это. Особенно, если вы хотите скорость. Валентина супербыстрая. Да, я знаю, что большинство dbs заявляет, что они быстрые. Но Валентина действительно очень особенная. Легко превосходит обычные dbs в x10-x50 раз. Потому что мало причин:

  • Это столбец (в то время как другие используют таблицы в формате строки)
  • Имеет специальные индексы
  • дает одновременно SQL и NON-SQL API (сотни методов)
  • обеспечивает в то же время реляционную модель, но также модели объектно-реляционной и расширенной сети
  • вы можете использовать не только внешние ключи для связывания таблиц, но и ObjectPtr и BinaryLinks.
  • Соединения по этим дополнительным ссылкам в несколько раз быстрее, чем через FK.
  • Очень мощный SQL, включая представления, триггеры, хранимые процедуры, замечательные рекурсивные запросы, типы перечислений с локализацией, ...

Следующая классная особенность Valentina DB, может быть, это единственная база данных, которая предлагает вам оба:

  • LOCAL db engine, который может быть встроен в ваше приложение, поэтому
  • Valentina SERVER + VCLIENT, которые можно использовать в вашем приложении

Вы можете одновременно смешивать местный двигатель и vclient.

Также имеется собственный Valentina Report движок, который присутствует во всех продуктах, и вы можете использовать его в своих приложениях.

Также невероятным инструментом является Valentina Studio для управления всем этим. И у них есть много бесплатных вариантов для большинства продуктов.

Просто потрясающий продукт !!

0 голосов
/ 09 февраля 2011

Попробуйте выполнить следующие действия:

  1. Определите вашу базу данных в SQLite
  2. Скачать экспресс-версию Devart LinqConnect
  3. Создай модель и наслаждайся
0 голосов
/ 28 января 2011

Лично я бы использовал SQLite .Возможно, стоит перенести базу данных в одну таблицу, если производительность является проблемой.Это будет зависеть от структуры данных, и вам нужно будет проверить, можно ли повысить производительность.

0 голосов
/ 28 января 2011

Ну, я не знаю, есть ли mongodb драйвер для c #.Но если да, переходите на mongodb или любую другую базу данных без схемы.Подробнее здесь

Редактировать: MongoDB имеет драйвер C # Драйвер C #

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