> я может глючу, но мне кажется что ODBC иногда
> сам пуляет на сервер запросы. И это не запросы
> к метаданным. Т.е. якобы клиентский SQL
> каким-то образом модифицируется. Это так и есть, или мне
> почудилось?

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

Но сами, от балды, запросы на модификацию данных не генерируют. Ну
разве что в редакции "Crazy Edition".

В ODBC есть такая вещь как ODBC-sequences. Это когда в текст SQL-
запроса вставляют вещи вида "{ts '2007-10-21 11:24:34.001'}" - драйвер
это дело находит и заменяет на "родную" конструкцию для сервера. Эти
же ODBC-sequences неявно перекочевали в OLEDB.

Кроме дат, также могут оформляться и вызовы хранимых процедур
"{call ...}" и вызовы встроенных функций "{fn ...}".

Посмотри последние новости провайдера. Мы во вторую версию добавили
конверторы для новых функций FB2.

Помимо "{...}", есть еще такая дебильная вещь как ... я их называю
квотированные имена объектов БД. MS, в своих движках второго уровня,
вместо того чтобы спросить "чем будем квотировать", тупо юзает
квадратные скобки. Последние версии провайдера, преобразуют и это
тоже.

Коваленко Дмитрий.

Ответить