Предложенный метод абстрагирования от конкретных РБД безусловно хорош, но постоянная перелинковка ODBC-библиотек при переключении между различными базами - не самое интересное и заманчивое решение. Существуют методы, позволяющие подгружать динамические библиотеки на лету, но это довольно сложная область программирования. Для решения такой проблемы было выпущено такое решение, как ODBC-диспетчеры (или менеджеры). Диспетчер представлен своей собственной ODBC-биб-лиотекой, которая, на самом деле, является заглушкой и перегружает свои вызовы на вызовы конкретного ODBC-драйвера по требованию приложения. Естественно, что библиотека диспетчера расширена функциями, позволяющими переключаться между базами не вдаваясь в подробности динамической линковки "на лету". Также существует управляющий софт, который конфигурируется диспетчером, сообщает ему параметры и местоположение конечных ODBC-драйверов. Таким образом, приложению достаточно быть слинкованным с ODBC-библиотекой диспетчера, и ему сразу после этого становятся доступны все ODBC-драйверы, прописанные в системе. При этом приложение даже не оперирует понятием драйвера, а использует так называемые DSN (Data Source Name). Практически все современные ODBC-драйверы, поставляемые с базами данных, рассчитаны на управление диспетчером (что, конечно, не мешает в случае надобности линковаться с ними напрямую).