@Smilleey

Есть ли аналог прокси для СУБД?

Добрый вечер, подскажите, пожалуйста, существуют ли некие прокси для СУБД? Есть специфичный софт, которые умеет работать только с MSSQL, хотелось бы его настроить так, чтобы он подключался к какому-то сервису, а сервис мог транслировать запросы в другую СУБД (oracle, postgresql и др.)
  • Вопрос задан
  • 101 просмотр
Решения вопроса 2
DevMan
@DevMan
в той или иной мере, решения есть.
но они частичные, и не сделают вам счастья/полной транскрипции.

это одна из причин появления dbal и orm, построенных поверх них.
Ответ написан
Нет, такого нет, тк просто разные БД обладают разными функциями, и разной семантикой в некоторых вещах.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@rPman
Если речь о драйверах доступа, то да их полно, начиная с отдельными как это было сделано у майкрософт ODBC, до встроенные в язык программирования (точнее предлагаемый фреймворк 'по умолчанию'). Например на php при использовании PDO или у той же java в JDBC достаточно указать в строке подключения к базе данных тип базы и настройки подключения и весь код будет работать с новой базой.

Но к сожалению разные базы данных могут работать несовместимым образом. Даже если закрыть глаза на DDL (sql запросы на создание и модификацию объектов базы данных) и закрыть глаза на наличие и стандарты встроенного языка для описания функций, триггеров, вьюх и прочего, и даже закрыть глаза на принципиальную возможность базы данных исполнять сложные запросы (например рекурсивные select), существуют такие особенности как например новые значения идентификаторов, есть базы данных где есть сиквенсы, и где их нет и вместо вызова соответствующих функций, новые идентификаторы заводятся автоматически (т.е. sql запрос в качестве значения по умолчанию берет новое) и их значение можно получить не до вызова insert а после, т.е. код кардинально другой... и это красиво не изменить, (но можно симулировать поведение сиквенс на основе таблиц, чего делать без особой на то необходимости настоятельно не рекомендуется).
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы