Сведения о вопросе

PASHA

10:36, 22nd August, 2020

Теги

SQL Server 2008 vs 2005 Linq интеграция

Просмотров: 387   Ответов: 5

Linq - SQL или Entity framework прекрасно интегрируются с SQL Server 2005.

Спецификация SQL Server 2008 обещает еще лучшую интеграцию, но я не вижу ее.

Каковы некоторые примеры того, что вы можете сделать Linq-wise при разговоре с сервером 2008, что вы не можете при разговоре с SQL Server 2005?



  Сведения об ответе

FAriza

09:41, 9th August, 2020

Существует проблема подкачки по объединенному набору, который SQL 2005 неправильно интерпретирует.

var orders = (
from c in Customers
from o in c.Orders
select new {c, o}
).Skip(10).Take(10).ToList();

LINQ генерирует номер строки для объединенного набора. SQL2005 генерирует плохой план из этого кода. Вот ссылка на обсуждение .

Edit#2: я хотел бы уточнить, что я не знаю, что SQL2008 решает эту проблему. Я просто надеюсь на это.


  Сведения об ответе

P_S_S

18:52, 16th August, 2020

Эта маркетинговая ссылка утверждает:

"Запишите код доступа к данным непосредственно в базу данных Microsoft SQL Server, используя LINQ - SQL."

Что в принципе не соответствует действительности.

Linq - SQL-это понимание запросов, переведенное в деревья выражений, переведенное в SQL, оптимизированное оптимизатором запросов и затем выполняемое с базой данных сервера SQL. "directly" Фе.


  Сведения об ответе

repe

02:39, 21st August, 2020

Если только LINQ не выставляет новый оператор MERGE, то нет.

Существует небольшая эффективная разница в движках, особенно с точки зрения ORM / client


  Сведения об ответе

DINO

06:21, 15th August, 2020

он имеет полную поддержку для новых типов данных. лол. кроме того, вы получили меня, кроме возможностей оптимизированных запросов (таких как команда слияния и т. д.).


  Сведения об ответе

lourence

08:08, 29th August, 2020

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


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться