J'essaie d'ajouter une colonne booléenne dans une table existante
alter table chatuser add activerecord bool;
alter table chatuser add activerecord boolean;
où activerecord est ma colonne booléenne
Aucune de ces requêtes ne fonctionne. Comment puis-je ajouter une colonne booléenne à une table existante?
Vous devez définir ce que vous ajoutez - une colonne:
alter table chatuser add column activerecord bool;
Mot clé COLUMN
manquant
ALTER TABLE ChatUser ADD COLUMN ActiveRecord TinyInt(1)
Ajouter avec la valeur par défaut
ALTER TABLE my_table ADD COLUMN new_field TinyInt(1) DEFAULT 0;
ALTER TABLE chatuser ADD activerecord BOOLEAN
Pas besoin de Word 'colonne'
Votre deuxième requête est parfaitement correcte (au moins) dans mysql.
Essayer:
select * from chatuser;
Si vous ne pouvez pas voir les résultats, vérifiez votre serveur mysql ou d'autres choses, pas la requête et, si la requête ci-dessus fonctionne, et si vous n'avez pas déjà la colonne nommée activerecord
, je parie que votre requête fonctionnera.
J'ai trouvé que sur Microsoft SQL, ce qui suit n'était pas valide:
ALTER TABLE meTable ADD COLUMN someBoolCol TinyInt;
L'omission du mot clé "colonne" a fonctionné:
ALTER TABLE meTable ADD someBoolCol TinyInt;