Тэги

Silverlight (36) WPF (10) IIS (7) Visual Studio (7) SharePoint (6) .Net Framework (5) ODP.NET (5) ASP.NET (4) C# (4) common (4) Network Settings (3) JavaScript (2) MS Office (2) Resharper (2) WCF (2) WEB (2) XPath (2) XSLT (2) ADO.NET (1) APEX (1) CMD (1) CSS (1) EF (1) HTML (1) Hardware bugs (1) Java (1) MS SQL (1) Oracle (1) PDF (1) Version Control (1) XAML (1)

вторник, 21 июля 2009 г.

ODP.NET versus System.Data.OracleClient

Нету больше System.Data.OracleClient. В четвертой версии .NET Framework он deprecated.
Microsoft решила свернуть его развитие.
Источник: ADO.NET team blog
Ну чтож, ODP.NET тоже можно кушать.

А давайте-ка я пройдусь по родному ADO.NET провайдеру от Oracle, называемому ODP.NET.
ODP.NET быстрее, но я делал высоконагруженный проект, где Майкросовстский провайдер прекрасно справлялся с потребностями ораклистов.
ODP.NET функциональнее, однако кому-то этот функционал покажется пятой ногой с внутренней коленкой.
ODP.NET глючнее и может очень дорого обойтись при переходе на другую версию Oracle. Мне кажется Oracle сам по себе далеко не так вкладывается в совместимость, как это делает Microsoft.
Вот что я помню в ODP.NET:
Когда Oracle возвращает число у которого после запятой где-то от 19 знаков точности, ODP.NET это не переварит и “порвет”.
Также есть ядерные забабоны, когда ODP.NET от одной версии Oracle подключается к базе другой версии, например 10й или 11й ODP.NET подключается к девятке или десятке Оракле. Это только в сказке все будет работать хорошо и сказка эта “Документация от Oracle”. А в жизни будет рваться, например, от разного сочетания символов в строке :). Правильный референс в системе на OCI не поможет :) гы гы гы
Ну не все так печально, ко всему можно приспособиться и использовать. Или теперь чаще будем задумываться о том, какую базу использовать.
Вообще, перевод с System.Data.OracleClient на ODP.NET ничего не стоит, а вот перевод наоборот может обойтись очень дорого.
Так что мягкой миграции, господа.

Комментариев нет:

Отправить комментарий