В чем разница между подключением собственного клиента SQL Server и ODBC-соединением? Каковы плюсы и минусы этих двух?
SQL Server: собственный клиент и ODBC?
Ответ 1
А? ODBC официально мертв? Кто-то, возможно, захочет сообщить Microsoft об этом:
Microsoft выравнивает с ODBC для обеспечения доступа к реляционным данным
Из приведенной выше ссылки:
ODBC - это де-факто промышленный стандарт для собственного реляционного доступа к данным...
и
Коммерческая версия Microsoft SQL Server, кодовое имя Denali, будет последней версией для поддержки OLE DB.
и, наконец,
"Мы поощряем использовать ODBC для разработки ваших новых и будущих версий вашего приложения. Вам не нужно менять существующие приложения с помощью OLE DB, поскольку они будут по-прежнему поддерживаться Denali на протяжении всего жизненного цикла. Хотя это дает вам большое окно для изменения ваших приложений до того, как устаревание вступит в силу, вы можете рассмотреть возможность переноса этих приложений в ODBC в рамках вашей будущей дорожной карты. Microsoft полностью привержена делу создания этого переход как можно более плавный и легкий." "
(выделено курсивом)
Ответ 2
ODBC полезен в моменты, когда базовая база данных может измениться, но вы не хотите, чтобы ваш код (при условии, что SQL остается неизменным во всех технологиях). В один прекрасный день вы можете подключиться к базе данных Oracle и перейти к базе данных SQL-сервера. Недостатком является то, что вы не получаете оптимизаций, которые предоставляют вам определенные драйверы. Было установлено, что собственный клиентский драйвер SQL Server намного быстрее, чем просто использование стандартного драйвера ODBC.