Redshift Python API для запроса списка процедур SQL - PullRequest
0 голосов
/ 24 мая 2018

Я разрабатываю приложение для анализа SQL-запроса, который будет выполнен в базе данных красного смещения.Существует ли какой-либо API, который либо принимает строку и возвращает информацию о том, является ли она поддерживаемой функцией SQL в красном смещении, либо возвращает список всех поддерживаемых функций SQL красного смещения?(Я нашел ссылку на все доступные функции SQL здесь . Мне было интересно, существует ли Python API, который бы возвращал тот же результат.) Подключение к красному смещению и выполнение соответствующего запроса для получения этой информациивариант, но не осуществимый.

1 Ответ

0 голосов
/ 25 мая 2018

Моя реальность

Я уже некоторое время занимаюсь разработкой ORM, и есть много JDBC API, предлагаемых вам с точки зрения метаданных о базе данных.Он фактически предлагает вам список функций для числовых значений, значений varchar и дат.

К сожалению, драйвер JDBC (и я также представляю другие драйверы) большую часть времени не реализует такую ​​часть спецификации, ивызов завершается возвратом пустого списка.

В других случаях он фактически возвращает список функций, но он явно устарел.Возможно, этот метод был реализован 10 лет назад, и никто не обновлял его ни в одной из последних версий драйвера или базы данных.

Я бы не советовал полагаться на любые метаданные базы данных, выходящие за рамки минимального набора операций.Да, к сожалению, это мой опыт работы с 10 основными потоковыми базами данных, и я думаю, что второстепенные базы данных могут быть хуже в этом отношении.

Обходной путь

Теперь, есливам действительно нужно запрашивать эту информацию во время выполнения, вы все равно можете собрать инструкцию SQL, которая использует функцию андидат , запустить ее и посмотреть, работает ли она или происходит сбой.Не идеальный вариант, но я думаю, это ясно скажет вам, реализовано оно или нет.Запуск его для сотен функций не займет много времени.

...