Czy Redshift obsługuje jakiekolwiek oświadczenie równoważne poniższym?Amazon Redshift: upuść tabelę, jeśli istnieje
DROP TABLE IF EXISTS tablename
Czy Redshift obsługuje jakiekolwiek oświadczenie równoważne poniższym?Amazon Redshift: upuść tabelę, jeśli istnieje
DROP TABLE IF EXISTS tablename
Zobacz następną odpowiedź; to jest nieaktualna.
Wsparcie
DROP TABLE IF EXISTS tablename;
dodano PostgreSQL 8.2. Redshift jest bardzo silnie zmodyfikowanym widżetem 8.1 autorstwa ParAccel, i o ile mi wiadomo, udało mu się przenieść kilka zmian z nowszych wersji. Jest bardzo mało prawdopodobne, że obsługuje on IF EXISTS
; prawdopodobnie musisz wykonać kwerendę z katalogu, aby ustalić, czy tabela istnieje, sprawdzając, czy istnieje information_schema
, a następnie decydując, czy utworzysz ją na podstawie wyniku.
ta jest obsługiwana w najnowszej wersji redshifcie:
DROP TABLE [ IF EXISTS ] name [, ...] [ CASCADE | RESTRICT ]
IF EXISTS klauzuli, która wskazuje, że nie, jeśli określona tabela ma istnieje, polecenie powinno dokonać żadnych zmian i powrócić do wiadomości, że Tabela nie istnieje, zamiast kończyć się z błędem.
Ta klauzula jest przydatna podczas tworzenia skryptów, więc skrypt nie zawiedzie, jeśli DROP TABLE działa na nieistniejącą tabelę.
Zaczerpnięte z online AWS Redshift docs.
Dobrze widzieć, że nadal pracują nad zgodnością z Pg. –
To powinna być zaakceptowana odpowiedź. – Kerr
Ta funkcja jest obsługiwana, patrz moja odpowiedź poniżej –