База данных начинающих вопросов

2

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

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

  • SQLClient
  • ОРМ
  • OleDB
  • ODBC
  • ADO.NET
  • NHibernate
  • Корпорация MS Enterprise
Теги:
database
console

3 ответа

6
Лучший ответ

Совсем микс там... сначала некоторые объяснения...

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

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

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

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

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

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

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

Лучше всего удачи в кодировании!:-)

  • 0
    Зачем начинать в ADO.Net? LINQ - это новый дружественный фреймворк. Используя Linq, вы будете в 5 раз продуктивнее, чем ADO.Net, пытаясь понять оптимистичный параллелизм вручную в наборах данных ADO.Net. Не говоря уже о том, что вы новичок в C #, что изучение Linq - отличное приложение для функционального программирования на C #.
  • 1
    Я подумал, что поскольку LINQ расширяет сами языки и абстрагирует детали, необходимые для работы с базой данных, для обучающегося разработчика имеет больше смысла на самом деле узнать о базе данных и о том, как с ней взаимодействовать. Обучение LINQ в первую очередь запутает новых разработчиков, как только они покинут .net и взглянут на остальной мир. (Просто MHO)
Показать ещё 2 комментария
3

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

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

1

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

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

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

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

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

Ещё вопросы

Сообщество Overcoder
Наверх
Меню