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?

1voto

Martin Thoma Punkte 105621

SQLite

Le site ALTER TABLE Befehl ist ein wenig speziell. Es gibt keine Möglichkeit, eine Spalte zu ändern. Sie müssen eine neue Spalte erstellen, die Daten migrieren und dann die Spalte löschen:

-- 1. First rename
ALTER TABLE
    Merchant_Pending_Functions
RENAME COLUMN
    NumberOfLocations
TO
   NumberOfLocations_old

-- 2. Create new column
ALTER TABLE
    Merchant_Pending_Functions
ADD COLUMN
    NumberOfLocations INT NULL

-- 3. Migrate data - you need to write code for that
-- 4. Drop the old column
ALTER TABLE
    Merchant_Pending_Functions
DROP COLUMN
    NumberOfLocations_old

0voto

abraham Punkte 17

Achten Sie darauf, dass Sie den data_type der zu ändernden Spalte hinzufügen.

ALTER TABLE TABLE_NAME MODIFY COLUMN_NAME DATA_TYPE NULL;

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