Строка подключения ODBC к Amazon Redshift
Есть ли способ указать в строке подключения настройки "Дополнительные параметры"?
Я пытаюсь создать строку подключения для доступа к Amazon Redshift из SAS с установленным SAS/Access to OleDb.
Поскольку у меня есть доступ только к OleDb, для подключения к ODBC мне придется использовать поставщик OleDb MSDASQL.
libname outhere oledb schema=ProjectXYZ init_string=
"
Provider=msdasql;
Driver={Amazon Redshift (x64)};
Server=blah.blah.blah.redshift.amazonaws.com;
Database=minions;
UID=bigboss;
PWD=boomboom;
Port=5439;
";
Это в основном работает, и SAS Explorer перечисляет все таблицы в базе данных (даже те, которые отсутствуют в ProjectXYZ {weird}). Шаг данных может проходить через данные.
Проблема в том, что когда я использую ViewTable для просмотра данных, возникает ошибка
NOTE: Table has been opened in browse mode.
ERROR: Open cursor error: ICommand::Execute failed. : [Amazon][RedShift ODBC] (30) Error occurred while trying to execute a que
ViewTable можно заставить работать с помощью ODBC Admin для создания UserDSN на основе {Amazon Redshift (x64)} с дополнительной опцией драйверов "Single Row Mode", выбранной в диалоговом окне "Setup".
Я не смог найти никакой документации о том, какими должны быть пары имя = значение, чтобы указать выбор любого из этих
Дополнительные опции:
- Однорядный режим
- Используйте Объявление / Выборка, Размер кэша 100
- Использовать несколько операторов
- Получить весь результат в память Я думаю, что это драйвер по умолчанию
- Включить HTTP прокси-соединение
- Порт сервера:
- Порт прокси:
1 ответ
Вот наиболее полный список доступных мне вариантов: http://docs.aws.amazon.com/redshift/latest/mgmt/configure-odbc-options.html
Вот некоторые из опций ODBC, упомянутых в документе:
- SingleRowMode (по умолчанию 0)
- UseDeclareFetch (по умолчанию 0)
- UseMultipleStatements (по умолчанию 0)
- Порт (по умолчанию 5439)
Когда UseDeclareFetch=0 и SingleRowMode=0, драйвер извлекает весь результат запроса в память.