Como excluir a tabela de um banco de dados somente se ela já existir

Se você usar um banco de dados por algum tempo, provavelmente chegará a hora em que você deseja excluir uma tabela, se ela já existir. Geralmente, o motivo pelo qual você deseja fazer isso é porque precisa criar uma tabela e não deseja encontrar um erro ao tentar criá-la, porque o nome da tabela já existe. Seja qual for o motivo, você pode excluir uma tabela existente no MySQL, Microsoft SQL e Oracle.

Passo 1

O MySQL teve a gentileza de criar essa ferramenta e facilitar a exclusão de uma tabela existente. Para excluir uma tabela com um nome indesejado “Drop_Me”, execute a seguinte pesquisa:

DROP TABLE SE EXISTE Drop_Me

(para os termos em inglês, exclua a tabela se “Drop_me” já existir).

Etapa 2

O Microsoft SQL torna um pouco mais difícil excluir uma tabela, se ela já existir. Para fazer isso, você precisará usar uma frase If (se condicional) e a função EXISTS (existe):

SE EXISTE (SELECT 1 FROM sys.objects WHERE OBJECT_ID = OBJECT_ID (N’Drop_Me ‘) E tipo = (N’U’)) DROP TABLE Drop_Me

(para os termos em inglês, se existir (selecione 1 em sys.objetcs em que object_id = object_id (N’Drop_Me “) e digite = (N’U ‘))) remova a tabela Drop_Me.

Etapa 3

O Oracle leva a complexidade de excluir uma tabela existente para outro nível. Nesta codificação de exemplo, você precisará saber o nome do proprietário da tabela, que neste caso é “Eu” (eu):

DECLARAR v_count NÚMERO: = 0; INICIAR SELECIONAR CONTAGEM (*) EM v_count FROM todas_tabelas WHERE nome_tabela = ‘Drop_Me’ AND owner = ‘Eu’; SE v_count = 1 ENTÃO EXECUTE IMEDIATA ‘DROP TABLE Me.Drop_Me’; FIM SE; FIM;

(Para os termos em inglês, DECLARE v_count Number: = 0; Iniciar, selecione COUNT (*) em v_count em all_tables WHERE table_name = ‘Drop_Me’ e owner = ‘Me’; se v_count = 1, execute ‘DROP TABLE Me.Drop_Me’ ; Concluir sim; END;

Referências

 

Você pode estar interessado:

Deixe um comentário