J'ai une table appelée person dans ma base de données. Je veux ajouter une autre colonne à la même table et c'est une colonne de type de données booléen. J'ai essayé de suivre les requêtes mais il dit erreur de syntaxe proche de la valeur par défaut. Je sais que c'est une pratique courante et il y a beaucoup de réponses. J'ai essayé beaucoup d'entre eux et je n'ai pas réussi à le faire fonctionner. Alors s'il vous plaît, aidez-moi.
requêtes que j'ai essayées
ALTER TABLE person add column "AdminApproved" BOOLEAN SET default FALSE;
ALTER TABLE person alter column "AdminApproved" BOOLEAN SET default FALSE;
J'ai essayé sans DÉFINIR mot clé aussi.
Dans SQL SERVER, il s'agit de BIT
, mais il permet de stocker NULL
ALTER TABLE person add [AdminApproved] BIT default 'FALSE';
Il y a aussi d'autres erreurs dans votre requête
Lorsque vous modifiez une table pour ajouter une colonne, pas besoin de mentionner le mot clé column
dans l'instruction alter
Pour ajouter une contrainte par défaut, pas besoin d'utiliser le mot clé SET
La valeur par défaut d'une colonne BIT
peut être ('TRUE' or '1')
/('FALSE' or 0)
. TRUE
ou FALSE
doit être mentionné comme string
pas comme identifiant
La réponse donnée par P ரதீப் crée un booléen nullable, pas un booléen, ce qui peut vous convenir. Par exemple, en C #, cela créerait: bool? AdminApproved
ne pas bool AdminApproved
.
Si vous devez créer un booléen (par défaut false):
ALTER TABLE person
ADD AdminApproved BIT
DEFAULT 0 NOT NULL;