Здравствуйте, alex1010, Вы писали:
A>Подскажите с чего начать? Какие-нибудь простые обучающие примеры — чтение данных, работа с хранимыми процедурами(триггерами). Глубины пока не нужны.
A>С С# в целом знаком, запросы к БД тоже составлял.
A>Просто не хочется начать с какого-нибудь "левого способа работы" и потом к нему привыкнуть.
Почти все внутренние API баз данных строятся на таких понятиях как "соединение" (connection), "курсор", "набор строк" (rowset, dataset), "команда" (statement) и т.д. Соответственно, эти абстракции в том или ином виде фигурируют в API работы с БД многих языков (ODBC, JDBC, и т.д.). Для .NET таким базовым API является ADO.NET.
В нем присутствуют такие, например, классы:
DbConnection — управляет (сетевым) соединением с БД
DbCommand — представляет SQL-команду, посылаемую в БД
DbDataReader — курсор для итерации по набору данных, получаемому из БД
Есть и другие классы для расширенных возможностей.
И уже поверх этого простого API строятся ОРМ, такие как EntityFramework, NHibernate, Dapper. Они бывают разной степени сложности и представляют разные дополнительные абстракции. Но чтобы эффективно работать с ними, необходимо изучить нижележащий слой, в данном случае, ADO.NET.
Для изучения лучше выбирать такие СУБД и драйверы к ним, которые работают без дополнительных танцев с бубном. В случае с .NET/С#, это, несомненно, MS SQL Server в разных редакциях, я бы рекомендовал Express версию, как наиболее приближённую к "боевой". Также большинство примеров и статей посвящены работе именно с ним.
Потом можно перейти к работе со свободными СУБД или теми, которые требуются по работе.
Ссылок не даю, думаю, гугл даст их достаточно.