2013-11-24 16 views

risposta

11

Vedere la risposta successiva; questo è scaduto.


Supporto per

DROP TABLE IF EXISTS tablename; 

è stato aggiunto in PostgreSQL 8.2. Redshift è un fork 8.1 molto modificato di ParAccel e, per quanto ne so, ha sostituito molto poche modifiche dalle nuove versioni. È molto improbabile che supporti IF EXISTS; probabilmente è necessario eseguire una query di catalogo per determinare se la tabella esiste, cercando information_schema, quindi decidere se la si creerà in base al risultato.

+0

Questa funzione è supportata, vedere la mia risposta sotto –

16

Questo è supportato nella versione più recente di Redshift:

DROP TABLE [ IF EXISTS ] name [, ...] [ CASCADE | RESTRICT ] 

SE ESISTE clausola che indica che non se la tabella specificata non esiste , il comando dovrebbe fare nessuna modifica e restituire un messaggio che la tabella non esiste, piuttosto che terminare con un errore.

Questa clausola è utile quando si esegue lo scripting, quindi lo script non fallisce se DROP TABLE viene eseguito su una tabella inesistente.

Preso da online AWS Redshift docs.

+1

È bello vedere che stanno ancora lavorando sulla compatibilità con Pg. –

+2

Questa dovrebbe essere la risposta accettata. – Kerr

Problemi correlati