none
EDM vs SQL база данных RRS feed

  • Вопрос

  • скажем так в базе данных я начинающий и возникает такой вопрос.

    какие отличительные различия есть в между двумя эти типами хранения данных(хотя я не исключаю что они могут вообще быть разными)

    мне с EDM очень удобно работать с визуал студио. обращение к нему идет просто запросто. В отличие от SQL базы данных, в котором, чтоб получить доступ надо занести куча датаадаптеров и куча другой херни.

    И EDM хотел бы в дальнейшем использовать его в своих программах или в чужих, но чтоб не получилось так, чтоб я заговорил о EDM а на меня посмотрели со"смехом".

    и ещё такой вопрос, можно ли программно создавать EDM модель SQL базы данных к которой пользователь будет подключаться, а потом когда была создана модель, обращаться к ней уже

    14 ноября 2012 г. 10:15

Ответы

  • EDM - это абстракция, за кулисами Вы всё равно работаете с БД. Вы создаёте модель EDMX, это визуальное представление сущностных классов Entity Framework и метеданных. Чтобы облегчить Вам жизнь, ORM (Entity Framework) абстрагирует ваши действия на уровне кода и транслирует запросы в SQL. Т.е. в конечном счёте у Вас всё хранится в БД. А ORM (EDMX) - посредник.
    • Помечено в качестве ответа Abolmasov Dmitry 23 ноября 2012 г. 10:23
    14 ноября 2012 г. 13:52
    Модератор
  • "ещё один вопрос, а чем можно сравнить скорость работы через EDM и использования чистого sql." - скорость работы для простых запросов почти идентична, а вот на сложных запросах, с множеством объединений и условий, нет, так как ORM не настолько умная как человек. А сравнивать можно используя SQL Server Profiler, только в Express версии он недоступен.
    • Помечено в качестве ответа Abolmasov Dmitry 23 ноября 2012 г. 10:23
    14 ноября 2012 г. 14:26
    Модератор

Все ответы

  • EDM - это абстракция, за кулисами Вы всё равно работаете с БД. Вы создаёте модель EDMX, это визуальное представление сущностных классов Entity Framework и метеданных. Чтобы облегчить Вам жизнь, ORM (Entity Framework) абстрагирует ваши действия на уровне кода и транслирует запросы в SQL. Т.е. в конечном счёте у Вас всё хранится в БД. А ORM (EDMX) - посредник.
    • Помечено в качестве ответа Abolmasov Dmitry 23 ноября 2012 г. 10:23
    14 ноября 2012 г. 13:52
    Модератор
  • как и думал, а какие могут быть примеры, в которых чистое использование SQL может дать существенный +? если мы всё равно работает с той же базой данной
    14 ноября 2012 г. 13:58
  • " а какие могут быть примеры, в которых чистое использование SQL может дать существенный +?" - скорее всего не примеры, а критерии: скорость работы (но не разработки), гибкость и полный контроль.
    14 ноября 2012 г. 14:02
    Модератор
  • ещё один вопрос, а чем можно сравнить скорость работы через EDM и использования чистого sql.

    доп. поиск слова в базе данных в которой 10 000 полей, и необходимое слово расположено как раз на позиции 10 000

    14 ноября 2012 г. 14:20
  • "ещё один вопрос, а чем можно сравнить скорость работы через EDM и использования чистого sql." - скорость работы для простых запросов почти идентична, а вот на сложных запросах, с множеством объединений и условий, нет, так как ORM не настолько умная как человек. А сравнивать можно используя SQL Server Profiler, только в Express версии он недоступен.
    • Помечено в качестве ответа Abolmasov Dmitry 23 ноября 2012 г. 10:23
    14 ноября 2012 г. 14:26
    Модератор