"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment puis-je laisser tomber une colonne à partir d'une table SQLite?

Comment puis-je laisser tomber une colonne à partir d'une table SQLite?

Publié le 2025-03-13
Parcourir:241

How Can I Drop a Column from a SQLite Table?

Modifier la table sqlite: supprimer la colonne

]

question:

Essayez de supprimer une colonne de la table de base de données SQLite à l'aide de la requête suivante:

ALTER TABLE table_name DROP COLUMN column_name;

Cependant, cela n'a pas réussi. Quelle est la solution?

Répondre:

Dans les versions avant SQLite 3.35.0 (2021-03-12), la suppression directe des colonnes n'est pas prise en charge. Pour apporter de tels modifications, une approche plus complexe est requise:

  1. Créer une table temporaire: Copiez toutes les données pertinentes (par exemple, les colonnes "a" et "b") dans la table temporaire:
CREATE TEMPORARY TABLE t1_backup (a, b);
INSERT INTO t1_backup SELECT a, b FROM t1;
  1. Supprimer la table d'origine: Supprimer la table contenant les colonnes indésirables:
DROP TABLE t1;
  1. Recréez la table originale: Définissez une nouvelle table qui ne contient pas de colonnes supprimées:
CREATE TABLE t1 (a, b);
  1. Transférer les données en arrière: insérer des données d'une table temporaire dans la table nouvellement créée:
INSERT INTO t1 SELECT a, b FROM t1_backup;
  1. Supprimer la table temporaire: Nettoyez en supprimant la table temporaire:
DROP TABLE t1_backup;
  1. Soumettre les modifications: faire des modifications permanentes:
COMMIT;
]

renouveler:

sqlite 3.35.0 et plus tard prend maintenant en charge directement la clause de colonne de dépôt, ce qui facilite la suppression des colonnes des tables.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3