288 votes

Comment faire pour supprimer ou ajouter des colonnes dans SQLITE ?

Je veux supprimer ou ajouter des colonnes dans la base de données sqlite

J’utilise la suite question de supprimer la colonne.

Mais il donne erreur

392voto

Michał Powaga Points 8949

ALTER TABLE SQLite

SQLite prend en charge un sous-ensemble limité de l'instruction ALTER TABLE. La commande ALTER TABLE dans SQLite permet à l'utilisateur de renommer une table ou pour ajouter une nouvelle colonne à une table existante. Il n'est pas possible de renommer une colonne, supprimer une colonne, ou d'ajouter ou de supprimer des contraintes à partir d'un tableau.

Vous pouvez:

  1. créer une table comme celle que vous voulez modifier,
  2. copie de toutes les données,
  3. drop table ancienne,
  4. renommez le nouveau.

48voto

Udinic Points 1945

J’ai écrit une implémentation Java basée sur le Sqlite recommandée par façon de ce faire :

Pour obtenir la colonne de la table, j’ai utilisé le « PRAGMA table_info » :

J’ai effectivement écrit à ce sujet sur mon blog, vous pouvez voir plus d’explications :

http://udinic.wordpress.com/2012/05/09/SQLite-Drop-Column-support/

13voto

LeleDumbo Points 5371

http://www.sqlite.org/lang_altertable.html

Comme vous pouvez le voir dans le diagramme, ajouter seulement une colonne est pris en charge. Il existe une solution (un peu lourde), mais : http://www.sqlite.org/faq.html#q11

4voto

Nous ne pouvons pas supprimer une colonne spécifique dans SQLite 3. Voyez la FAQ.

0voto

Gaurav Points 31

Comme support à l’instruction ALTER TABLE a limité à SQLite, ainsi vous pouvez seulement ajouter une colonne à l’extrémité de la table TABLE_NAME de changement ou de SQLite.

Voici la meilleure réponse du comment pour supprimer colonne de SQLITE ?

visite de Supprimer la colonne de la table SQL

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X