S'il est vrai que les est pas de MODIFIER la COLONNE, si vous ne voulez renommer la colonne de chute de la contrainte not NULL, ou de modifier le type de données, vous pouvez utiliser l'ensemble de dangereux commandes:
PRAGMA writable_schema = 1;
UPDATE SQLITE_MASTER SET SQL = 'CREATE TABLE BOOKS ( title TEXT NOT NULL, publication_date TEXT)' WHERE NAME = 'BOOKS';
PRAGMA writable_schema = 0;
Vous devez fermer et rouvrir votre connexion, ou le vide de la base de données pour recharger les changements dans le schéma.
Par exemple:
Y:> sqlite3 booktest
SQLite version 3.7.4
Entrez ".aide" pour obtenir des instructions
Entrer des instructions SQL terminée avec un ";"
sqlite> créer une table de LIVRES ( titre, TEXTE qui n'a PAS la valeur NULL, publication_date TEXT not NULL);
sqlite> insert into LIVRES (VALEURS"NULLTEST",null);
Erreur: LIVRES.publication_date ne peut pas être NULL
sqlite> PRAGMA writable_schema = 1;
sqlite> mise à JOUR SQLITE_MASTER DÉFINIR SQL = 'CREATE TABLE des LIVRES ( titre, TEXTE qui n'a PAS la valeur NULL, publication_date TEXTE)' WHERE NOM = 'LIVRES';
sqlite> PRAGMA writable_schema = 0;
sqlite> .q
Y:> sqlite3 booktest
SQLite version 3.7.4
Entrez ".aide" pour obtenir des instructions
Entrer des instructions SQL terminée avec un ";"
sqlite> insert into LIVRES (VALEURS"NULLTEST",null);
sqlite> .q
LES RÉFÉRENCES SUIVENT:
pragma schema_version
Lorsque cette pragma est sur, le SQLITE_MASTER tables dans la base de données peut être modifié à l'aide d'ordinaire UPDATE, INSERT et DELETE. Avertissement: la mauvaise utilisation de cette pragma peut facilement entraîner la corruption dans le fichier de base de données.
[alter table](à Partir de http://www.sqlite.org/lang_altertable.html)
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.