Use a instrução TRUNCATE TABLE para excluir todos os dados de uma tabela ou de partições específicas em um cluster do AnalyticDB for MySQL. O esquema da tabela é preservado.
Sintaxe
-
Excluir todos os dados de uma tabela:
TRUNCATE TABLE db_name.table_name; -
Excluir dados de partições específicas em uma tabela:
TRUNCATE TABLE db_name.table_name PARTITION partition_name[,...];
Parâmetros
|
Parâmetro |
Descrição |
|
db_name |
Nome do banco de dados que contém a tabela. |
|
table_name |
Nome da tabela a ser truncada. |
|
partition_name |
Nome da partição a ser truncada. No AnalyticDB for MySQL, os nomes de partição são valores BIGINT. Separe vários nomes de partição com vírgulas. Para obter os nomes das partições, consulte Consultar nomes de partição. |
Consultar nomes de partição
Para listar todos os nomes de partição de uma tabela, execute:
SELECT partition_name FROM information_schema.partitions WHERE table_name = 'your_table_name' ORDER BY partition_name DESC LIMIT 100;
Observações de uso
Não é possível executar
TRUNCATE TABLEdurante um backup do banco de dados. A execução nesse período resulta em erro.A instrução
TRUNCATE TABLEnão pode ser executada enquanto uma tarefa BUILD (processo de organização de dados em segundo plano) estiver em andamento. Aguarde a conclusão da tarefa BUILD e execute a instrução novamente. Para verificar o status de uma tarefa BUILD, consulte Visualize o estado de uma tarefa BUILD.
Exemplos
-
Excluir todos os dados da tabela
customerno banco de dadosadb_demo:TRUNCATE TABLE adb_demo.customer; -
Excluir dados das partições
20170103,20170104e20170108na tabelacustomerdo banco de dadosadb_demo:TRUNCATE TABLE adb_demo.customer PARTITION 20170103,20170104,20170108;