У меня есть таблица в Redshift со следующими столбцами
id int,state varchar(50), name varchar(50),tsa varchar(50),countrycode varchar(50),country_id int
Когда я вставляю ее в Redshift из AWS Lambda, она ожидает экранирования varchar следующим образом -
cursor.execute('insert into test values (81,\'tn\',\'ic\',\'ICS\',\'US\',9)'))
Я выгружаю данные из Redshift следующими способами -
Метод 1
unload ('select * from info')
to 's3://Info/Load/'
iam_role 'arn:aws:iam:::role'
addquotes
;
Выход на S3:
80|test|test1|test2S|US|9
Метод 2
unload ('select * from info')
to 's3://Info/Load/'
iam_role 'arn:aws:iam:::role'
;
Выход на S3 составляет
"41"|"PA"|"PEN"|"Test"|"US"|"90"
Как сделатьЯ выгружаю данные из Redshift в следующем формате, чтобы можно было легко выполнять вставки.
81,\'tn\',\'ic\',\'ICS\',\'US\',9