Вопросы базы данных для начинающих - PullRequest
2 голосов
/ 24 августа 2009

Я новичок в базах данных и вообще очень неопытен в программировании. Для консольного приложения C # (я пишу с VS Express), к которому после тестирования будет добавлен пользовательский интерфейс, мне нужно использовать базу данных для хранения его данных.

Может ли кто-нибудь рассказать мне или указать на мои объяснения новичков, а также плюсы и минусы этих методов доступа к базе данных, чтобы я мог решить, какой из них использовать?:

  1. SQLClient
  2. ORM
  3. OleDB
  4. ODBC
  5. ADO.NET
  6. NHibernate
  7. MS Enterprise Library

Ответы [ 3 ]

6 голосов
/ 24 августа 2009

Весь микс там ... сначала несколько объяснений ...

1) Клиент SQL Клиент SQL - это приложение, которое подключается к базе данных SQL с целью запроса / управления / работы с данными в базе данных SQL. (любая программа, обращающаяся к базе данных, phpAdmin, администратор SQLite и т. д.).

2) ORM - объектно-реляционное отображение. Это способ конвертировать различные типы данных, когда типы данных несовместимы. Подумайте о классе автомобилей, который включает четыре экземпляра класса шин. Этот тип структуры плохо переводится напрямую на типы, доступные в дизайне базы данных, и может быть причиной для использования ORM. (Чтобы связать объекты (автомобиль, шины и т. Д.) В простые типы баз данных (целое число, число с плавающей запятой и т. Д.)

3) OLE (произносится Olay) DB Это метод Microsoft (API) для подключения к базе данных с помощью COM. OLE DB является частью стека MDAC (объединение технологий MS, работающих вместе в рамках доступа к данным).

4) ODBC - это Open Database Connectivity и его альтернативный API для систем управления базами данных (СУБД). Если OLE DB - это COM-компонент (объектная модель компонентов) для интеграции с базами данных, ODBC стремится быть независимым от языка.

5) ADO.NET - это набор базовых классов (API) для использования на языках .NET для подключения и связи с базами данных.

Я бы предложил начать с ADO.net для вашего C # фона, OLE обычно для более старых (классика VB) приложений, здесь есть хорошее руководство для начинающих http://www.csharp -station.com / Tutorials / AdoDotNet / Lesson01 .aspx

Не позволяйте всей терминологии пугать вас, как только вы запрыгнете и начнете ковыряться, вы поймете все предоставленные ответы лучше ...

Удачи в твоем кодировании !! :-)

3 голосов
/ 24 августа 2009

SQLClient, OleDB, ODBC - это реализации драйверов СУБД / ADO.NET различных DMBS (ошибаться, надеюсь, что это имеет смысл). Например, SQLClient - это реализация ADO.NET для подключения к базе данных SQL Server. Выбор между этими драйверами зависит только от того, какую базу данных вы хотите использовать. Для новичка я бы предложил SQL Server, поскольку у вас, возможно, уже установлена ​​какая-то версия.

ORM - объектно-реляционное отображение. Это основанная на коде реализация автоматического сопоставления между вашими основанными на коде моделями и базой данных, в которой они хранятся. Если вы не хотите пока вручную дотрагиваться до базы данных во время обучения, это хороший вариант - это что-то полезное как для профессионалов, так и для начинающих, так как позволяет вам не беспокоиться о базовой реализации базы данных, или написание CRUD (создание, чтение, обновление, удаление) функциональности самостоятельно. Взгляните на ActiveRecord для .net (http://www.castleproject.org/activerecord/index.html)

1 голос
/ 24 августа 2009

Если вы ищете простое введение в базы данных в C #, вы хотите использовать LINQ и контекст данных.

Просто добавьте «Контекст данных» в ваш проект. Дважды щелкните файл, чтобы открыть конструктор для контекста данных LINQ. Откройте «Проводник сервера» в Visual Studio (в разделе «Просмотр») и подключитесь к SQL Server. С его помощью вы можете перетаскивать свои таблицы на дизайнер LINQ в visual studio.

Перейдите на Google и посмотрите на использование linq с контекстом для работы с вашей БД.

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

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

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