Summary: neste tutorial, você irá aprender a usar a instrução MySQL DROP TABLE
para largar uma tabela da base de dados.
MySQL DROP TABLE statement syntax
Para remover as tabelas existentes, você usa o MySQL DROP TABLE
statement.
Aqui é a sintaxe básica de DROP TABLE
declaração:
Code language: SQL (Structured Query Language) (sql)
DROP TABLE
declaração remove uma tabela e seus dados permanentemente do banco de dados., Em MySQL, você também pode remover várias tabelas usando um único DROP TABLE
afirmação, cada tabela é separada por uma vírgula (,).
a opção TEMPORARY
permite-lhe remover apenas as tabelas temporárias. Ele garante que você não remover acidentalmente tabelas não-temporárias.
a opçãoIF EXISTS
pode, condicionalmente, deixar cair uma tabela apenas se existir. Se você largar uma tabela não existente com a opção IF EXISTS
, MySQL gera uma nota, que pode ser obtida usando a instrução SHOW WARNINGS
.,
Note que a declaração DROP TABLE
apenas contém tabelas. Ele não remove privilégios de usuário específicos associados com as tabelas. Portanto, se você criar uma tabela com o mesmo nome que a largada, MySQL irá aplicar os privilégios existentes para a nova tabela, o que pode representar um risco de segurança.
The RESTRICT
and CASCADE
options are reserved for the future versions of MySQL.
para executar a declaração DROP TABLE
, deverá ter privilégios DROP
privilégios para a tabela que deseja remover.,
MySQL DROP TABLE examples
Let’s take some examples of using the DROP TABLE
statement.,3b2a0bf834″>
opção DROP TABLE
declaração:
Code language: SQL (Structured Query Language) (sql)
MySQL emitido um aviso em vez disso:
Code language: SQL (Structured Query Language) (sql)
Para mostrar o aviso, você pode usar o SHOW WARNINGS
instrução:
Code language: SQL (Structured Query Language) (sql)
MySQL DROP TABLE com base em um padrão
Suponha que você tenha muitos tabelas cujos nomes começam com test
em seu banco de dados e você deseja remover todos eles usando um único DROP TABLE
instrução.,
infelizmente, MySQL não tem o ID
afirmação que pode remover tabelas com base na correspondência de padrões:
Code language: JavaScript (javascript)
No entanto, existem alguns workarounds. Discutiremos um deles aqui para sua referência.
Primeiro, crie três tabelas test1
test2
test4
para demonstração:
Code language: SQL (Structured Query Language) (sql)
Suponha que você deseja remover todos os test*
tabelas.,
em Segundo lugar, declarar duas variáveis que aceitam o esquema de banco de dados e um padrão que você deseja para as tabelas de correspondência:
Code language: CSS (css)
o Terceiro, construir uma dinâmica DROP TABLE
declaração:
Basicamente, a consulta indica que o MySQL vá para o information_schema
tabela, que contém informações sobre todas as tabelas de todos os bancos de dados, e para concatenar todas as tabelas no banco de dados @schema
( classicmodels
) que coincide com o padrão de @pattern
( test%
) com o prefixo DROP TABLE
., A função GROUP_CONCAT
cria uma lista separada por vírgulas de tabelas.
por último, apresentar a dinâmica de SQL para verificar se ele funciona corretamente:
Code language: SQL (Structured Query Language) (sql)
Como você pode ver, o resultado é o que nós esperávamos.
ifth, execute a declaração usando uma declaração preparada como mostrado na seguinte consulta:
Code language: SQL (Structured Query Language) (sql)
Juntando tudo.,
Por isso, se quiser largar várias tabelas que tenham um padrão específico numa base de dados, basta usar o programa acima para poupar tempo. Tudo o que você precisa fazer é substituir o padrão e o esquema de banco de dados em @pattern
e @schema
variáveis. Se você muitas vezes tem que lidar com esta tarefa, você pode desenvolver um procedimento armazenado com base no script e reutilizar este procedimento armazenado.
neste tutorial, você aprendeu a usar a instrução MySQL DROP TABLE
para remover as tabelas existentes de uma base de dados.
- este tutorial foi útil?,
- YesNo
Deixe uma resposta