Ole db или ODBC поглед, преди да скача

OLE DB и ODBC са APIs, които осигуряват достъп до различни източници на данни. Microsoft е предназначена за ODBC SQL достъп до данни и OLE DB - за достъп до всички данни в COM среда.

Какво е лошо ODBC?

Изпълнение на OLE DB не представлява отказ от ODBC. В обозримо бъдеще, Microsoft планира да подкрепи ODBC, както и извършване на други производители на бази от данни и инструменти. Така че това, което не отговаря ODBC разработчиците? За достъп до данните, е съвсем адекватен. Опитът показва, че ако ODBC отговаря на нуждите на бизнеса си, за OLE DB, и свързаните с тях технологии, които могат да забравят.

Въпреки това, ODBC се превърна в добре развит, напълно изразиш себе си технологии и Microsoft ще продължи да я подобрим. ODBC е подобни влакове в депо, което се намира само на няколко спирки останали. По всяко спре можете да прехвърлите на друг влак, OLE DB, и всеки решава, че е по-добре да се направи.

По този начин, ODBC се справя с отговорностите си. Добре известен със своята производителност, гъвкавост и архитектура. Има много различни инструменти и работни среди, конструирани в ODBC (например, RDO). За да разберете как най-скоро трябва да обмислят преминаването към OLE DB, анализира степента, в която възможностите на ODBC съответстват на подобренията, които са планирани за изпълнение в информационна система. Трябва да се помни, че в следващите пет години, ODBC ще осигури същите функции, както и днес. ODBC ще продължи да предоставя достъп до SQL данни, които не са интегрирани с други, не-релационни типове данни, като например XML-файлове, Microsoft Office документи и електронна поща файлове. Ако този вид файлове са част от информационни ресурси на компанията, трябва да обмисли възможността за OLE DB.

Какво ново предлага OLE DB

OLE DB представлява следващата фаза на ODBC. Тези средства представляват относително независим софтуер слой, използвайки същия основен набор от интерфейси за приложни програми (API) за достъп до различни бази данни. Тяхната работа е гарантирана невидими за потребителя софтуерни модули, които вземат предвид специфичните особености на всяка база данни и действат като софтуерен двигател за по-горните слоеве. Най-OLE DB напълно осъществена на принципа на отворена комуникация между бази данни. Най-големите разлики са в използването на някои ключови термини и в заобикалящия контекст. Таблица 1 съдържа тълкуването на термините, използвани често се прилага за ODBC и OLE DB.

Таблица 1. Тълкуване на основните термини в ODBC и OLE DB.

SQL изявление, интерпретирани от свързаното базата данни

Текстов низ, който разбира източника на данни.

По отношение на функционалността OLE DB осигурява достъп до всички видове информация: релационни и нерелационни, йерархични и плоски, фиксирани и променливи, ориентирани към SQL или друг език за заявки. За да се улесни достъпа до информация, OLE DB източници на данни са представени издадени въз основа на COM, с добре дефинирана програмен интерфейс. Тези компоненти, наречени доставчици на данни взаимодействат с информация хранилище. При свързване към кандидатура за доставчик на данни на клиента винаги получава като отговор на набор от документи, без значение какво става доставчик на данни - за релационна база данни таблица или списък директория. Доставчикът е отговорен за извличане на данни от физически медиите и тяхното форматиране. Данните могат да се съхраняват в едно и също постоянно местонахождение (на диск или в база данни, файл), за определена област на паметта или дори на различни машини и различни платформи. Те могат да бъдат релационни и йерархична, структуриран и плосък записва в стандартен формат и в частни, достъпни и недостъпни за ODBC.

OLE DB Върни резултатен набор (наречена набор от редове или записи) не е просто поток от байтове, написани на паметта на клиентското приложение, както в случая ODBC. Този поток данни се съдържат в самостоятелно звено със собствен COM интерфейс за програмиране. Този модул предлага разнообразие от начини за манипулиране на комплект записи - сортиране, филтриране, движещ се текст. Въпреки това, той признава възможността за едновременна работа с данните от много потребители. За да работите с набор от линии може да бъде дори когато е изключен от първоначалния източник на данни, което го прави най-мощният този нов тип данни, за да бъде много ефективна.

Бариери на OLE DB

Дали наистина е добър OLE DB? За да отговорим на този въпрос, трябва внимателно да помисли два аспекта. От една страна, OLE DB не може да се счита за доста зряла технология. От друга - Microsoft е позиционирането му като основен достъп услуга за данни за бъдещи платформи Windows. Това означава, че Microsoft планира да изменя съществено OLE DB. Нека разгледаме тези два аспекта по-подробно, за да се опита да се предскаже какво въздействие ще окаже върху потребителите.

Фигура 1 показва архитектурата за сравнение OLE DB и ODBC.

Ole db или ODBC поглед, преди да скача

ФИГУРА 1. ODBC архитектура и OLE DB.

И двете са на базата на специализиран компонент (в случая на ODBC драйвери и доставчици на OLE DB в областта на архитектурата), които са свързани с източника на данни. Като част от водача ODBC обикновено действа като упълномощен посредник, който предава на двигателя SQL база данни и се връща на снимачната площадка резултат. Доставчикът на OLE DB получава искания в някакви въпроси език (не е задължително SQL) и връща набор от записи. Доставчик, който капсулира базата данни е ограничен до един прост SQL команди за предаване надолу към сървъра на базата данни. Доставчик взаимодействие с не-релационни източник на данни (например, електронна поща), допълнителна функция: създава набор от записи и го изпълва с информация. Такъв доставчик ще работи с прост език за заявки от SQL. Да кажем, за връщане на имейл съобщения от клиента на доставчика трябва да знае само името на подателя. тип на отбора

прост, ефективен и лесно кодиран.

OLE DB се състои от две части: преден край и вътрешна сърцевина. Ядро работи във фонов режим, ще обработва заявките и търсене на данни. Част от OLE DB, е отговорен за външен интерфейс, тя включва софтуер, необходим за всеки доставчик на взаимодействие с клиентите. Microsoft може да се настрои само на стандарта за развитието на OLE DB по отношение на функционалност и технологиите. За тази цел, определена от спецификацията на COM интерфейс, който доставчикът трябва да поддържа. OLE DB 2.5 показва значителен напредък в сравнение с по-ранни версии: той вдигна някои ограничения дизайн и добавя нови функции. Например, OLE DB 2.5 дава възможност да се върне на нередовни, не таблични набори от записи. OLE DB може да се използва за показване на полу-структурирани и йерархични данни, като например XML потоци, Word и Excel документи, съдържанието на файловата система директории. В допълнение, новата версия намалява количеството на информация за доставчици, които трябва да знаете за потребителя. Вместо спецификации сложните командни струни и струни за връзка да се свържете с желаните набор от записи може по синтаксис URL адрес. Този имот се нарича директен URL-връзката, ви позволява да пишете низ връзка:

Този интуитивен записи са доставчик име outlookprovider данни и команди на доставчика на текст предписване да сканира папката Входящи и да намерят всички съобщения, изпратени от абонат Джо ползвателя. Най-новата версия на инструментите за разработчици за платформата на Microsoft, SDK (разработка на софтуер Kit), частично повтаря постигне OLE DB 2.5.

Тъй като разработчиците на Microsoft смятат, OLE DB като основната технология на достъп до данни в среда Windows, потребителите в близко бъдеще ще получават цялата необходима подкрепа за използването на OLE DB. Доставчиците на критична Microsoft продукт в сървърите на бази данни клас, SQL Server, веднага отразяват в него всички нововъведения OLE DB. Дали тези нововъведения ще приеме други производители на бази данни? По мое мнение, OLE DB недостатък е, че единственият надежден подкрепа са производители на SQL Server версии 6.5 и 7.0. Известно е, че производителите на OLE DB доставчик за Jet и Oracle освободени функционално непълни продукти, в които се откриват грешки, така че разработчиците е малко вероятно да бъде от полза. OLE DB за Oracle версия на производство на Microsoft също не е невероятно, но все пак изглежда, че най-приемливо. Версия на OLE DB 2.1 осигурява достъп до данни от множество софтуерни среди, но тя все още е проблематично. За OLE DB технологията се превърна в стандарт, който всички производители на бази данни и евентуално независими компании трябва да изпускат пълните версии на доставчици за различни СУБД. Възможно е, че това ще отнеме за подобряване на тези компоненти заедно.

Като цяло, OLE DB тепърва трябва да получат признание и да получите добра репутация като надеждно средство за т. Е. За да се повтаря пътя на последните няколко години, ODBC. OLE DB, но има потенциал да надмине ODBC разнообразие се поддържа източници на данни, гъвкавост и лекота на програмни интерфейси. Освен това, основната роля на OLE DB архитектура работи Windows разпределени приложения за интернет, ДНК (Разпределени интернет приложения), както и в DNS архитектура прави тази технология жизнеспособна кандидат за ODBC място. По всяка вероятност, OLE DB ще бъде важен компонент при планирането на бъдещите стратегии за достъп до данни. Но това не трябва да се прилага сляпо.

Кога да изберете OLE DB

Ако решите на OLE DB да бъде днес, а след това какви фактори трябва да се обърне внимание? Microsoft е предназначена за OLE DB въз основа на изисквания за изпълнение, но от гледна точка на архитектурата повикване OLE DB пресича повече софтуерни слоеве от SQL заявка за, течаща директно от кода чрез API в ODBC. Ето защо, когато се използва ODBC процес е малко по-бързо. За да се компенсира този недостатък, разработчиците трябва да имат предвид следното възможност: OLE DB да се обединят и да се интегрират структурно различни типове данни и да ги използва в уеб-базирани приложения.

Трябва да се помни, че този ход на OLE DB не е толкова прост. Тази предпазливост е важно, дори и за тези потребители, които вече използват модела на обекта: RDO или обекта на достъп до данни (DAO), или дори версия на АДО по-рано от 2.x. Тя може да бъде особено трудно прехода в случай на бази данни, различни от SQL Server. Разходите ще бъдат изплатени обратно в същото време, само когато действителната работа ще започне с предимствата на интеграцията на приложения и системни услуги, предоставени от OLE DB. Ако потребителите не знаят как да се реализират предимствата на разнородни въпроси, които не включват съхранение на данни и не планират да интегрират нерелационни типове данни (документи, електронни таблици, електронна поща), те рискуват да загубят производителността! (Или не намерите конкретни подобрения след актуализация на системата.)

Аз обикновено съветват клиентите си да преминат към OLE DB, само когато това се дължи на спешните нужди на бизнеса (както е описано по-горе). Същото се препоръчва, както и създаването на нови системи, както и в процеса на проектиране веднага да ги положи всички възможности, предлагани от OLE DB. Гъвкавост, интеграция и съгласуваност - важните качества на OLE DB. Ако те са необходими за дейността на дружеството, на прехода към OLE DB може да бъде рентабилно.

Базирани системи за Интернет, представляват широк спектър от приложения за OLE DB, въпреки лошото качество на услугите някои доставчици на омаловажаване на усилията. За да се обадите на отдалечени компоненти чрез HTTP в интернет, можете да използвате услугата за отдалечен достъп до данните, отдалечени услуги за данни (RDS). За да се реализира тази възможност позволява използване като ключова технология, разработена от компоненти за достъп до данни на Microsoft, Microsoft Data Access Components (MDAS), които включват OLE DB. Накрая, на клиентската страна на OLE DB да предостави за лечението на несвързани recordsets.

В OLE DB има силни и слаби страни; тази технология не е там от магия. Тя преминава от етапа на съвършенство, в крайна сметка да се превърне в признат стандарт. Запознайте се с него сега стои и да се прилагат - само тогава, когато сте готови да се учат от тази конкретна полза.