505 Stimmen

Ändern einer Spalte so, dass sie nullbar ist

Ich möchte eine Tabellenspalte so ändern, dass sie nullbar ist. Ich habe verwendet:

ALTER TABLE Merchant_Pending_Functions Modify NumberOfLocations NULL

Dies führt zu einem Fehler bei Modify . Was ist die richtige Syntax?

772voto

Quassnoi Punkte 396418

Angenommen, SQL Server (basierend auf Ihren vorherigen Fragen):

ALTER TABLE Merchant_Pending_Functions ALTER COLUMN NumberOfLocations INT NULL

Ersetzen Sie INT mit Ihrem tatsächlichen Datentyp.

92voto

Paul LeBeau Punkte 90619

In PostgresQL ist das der Fall:

ALTER TABLE tableName ALTER COLUMN columnName DROP NOT NULL;

77voto

djjeck Punkte 1632

Wenn es sich um eine MySQL-Syntax handeln würde, würde der Typ fehlen, wie in einigen anderen Antworten erwähnt wird. Die korrekte MySQL-Syntax wäre gewesen:

ALTER TABLE Merchant_Pending_Functions MODIFY NumberOfLocations INT NULL

Ich poste hier, um den MySQL-Benutzern Klarheit zu verschaffen.

49voto

Igor S. Punkte 3282

Für Oracle Database 10g Benutzer:

alter table mytable modify(mycolumn null);

Sie erhalten "ORA-01735: ungültige ALTER TABLE-Option", wenn Sie etwas anderes versuchen

ALTER TABLE mytable ALTER COLUMN mycolumn DROP NOT NULL;

8voto

Hammerite Punkte 20657

Obwohl ich nicht weiß, welches RDBMS Sie verwenden, müssen Sie wahrscheinlich die gesamte Spaltenspezifikation angeben und nicht nur sagen, dass Sie jetzt wollen, dass sie nullbar ist. Zum Beispiel, wenn sie derzeit INT NOT NULL sollten Sie ausstellen ALTER TABLE Merchant_Pending_Functions Modify NumberOfLocations INT .

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X