Ich habe eine Tabelle namens person in meiner Datenbank. Ich möchte füge der gleichen Tabelle eine weitere Spalte hinzu und es ist eine boolesche Datentypspalte. Ich habe versucht, folgenden Abfragen, aber es heißt Syntaxfehler fast Standard. Ich weiß, dass dies häufig vorkommt und es gibt viele Antworten. Ich habe viele von ihnen ausprobiert und konnte nicht herausfinden, ob es funktioniert. Also bitte hilf mir.
Fragen, die ich versucht habe
ALTER TABLE person add column "AdminApproved" BOOLEAN SET default FALSE;
ALTER TABLE person alter column "AdminApproved" BOOLEAN SET default FALSE;
Ich habe es auch ohne SET Schlüsselwort versucht.
In SQL SERVER ist es BIT
, obwohl es erlaubt, NULL
zu speichern
ALTER TABLE person add [AdminApproved] BIT default 'FALSE';
Es gibt auch andere Fehler in Ihrer Anfrage
Wenn Sie eine Tabelle ändern, um eine Spalte hinzuzufügen, müssen Sie das Schlüsselwort column
in der Anweisung alter
nicht erwähnen
Zum Hinzufügen der Standardeinschränkung muss das Schlüsselwort SET
nicht verwendet werden
Der Standardwert für eine BIT
-Spalte kann ('TRUE' or '1')
/('FALSE' or 0)
Sein. TRUE
oder FALSE
muss als string
und nicht als Bezeichner angegeben werden
Die Antwort von P ரதீப் erzeugt einen nullbaren Bool, keinen Bool, was für Sie in Ordnung sein kann. In C # würde beispielsweise Folgendes erstellt: bool? AdminApproved
nicht bool AdminApproved
.
Wenn Sie einen Bool erstellen müssen (standardmäßig false):
ALTER TABLE person
ADD AdminApproved BIT
DEFAULT 0 NOT NULL;