"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como posso soltar uma coluna de uma tabela sqlite?

Como posso soltar uma coluna de uma tabela sqlite?

Postado em 2025-03-13
Navegar:382

How Can I Drop a Column from a SQLite Table?

modificar tabela sqlite: excluir colun

]

pergunta:

Tente excluir uma coluna da tabela de banco de dados SQLite usando a seguinte consulta:

ALTER TABLE table_name DROP COLUMN column_name;

No entanto, não foi bem -sucedido. Qual é a solução?

Responder:

Nas versões antes do SQLite 3.35.0 (2021-03-12), a exclusão direta das colunas não é suportada. Para fazer essas alterações, é necessária uma abordagem mais complexa:

  1. Crie tabela temporária: copie todos os dados relevantes (por exemplo, colunas "a" e "b") na tabela temporária:
CREATE TEMPORARY TABLE t1_backup (a, b);
INSERT INTO t1_backup SELECT a, b FROM t1;
  1. exclua a tabela original: exclua a tabela que contém as colunas indesejadas:
DROP TABLE t1;
  1. recrie a tabela original: define uma nova tabela que não contém colunas excluídas:
CREATE TABLE t1 (a, b);
  1. transfira os dados de volta: inserir dados de uma tabela temporária na tabela recém -criada:
INSERT INTO t1 SELECT a, b FROM t1_backup;
  1. excluir tabela temporária: limpar excluindo a tabela temporária:
DROP TABLE t1_backup;
  1. envie alterações: Faça alterações permanentes:
COMMIT;
]

renovar:

SQLITE 3.35.0 e posterior agora suporta diretamente a cláusula de coluna Drop, facilitando a exclusão de colunas das tabelas.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3