2012-03-30 16 views

Odpowiedz

20

Nie sądzę, że można bez zastępowania całego stołu. Z fine manual:

SQL, SQLite nie implementuje

pełne wsparcie ALTER TABLE
Tylko tabeli warianty RENAME i ADD COLUMN polecenia ALTER TABLE są obsługiwane. Inne rodzaje operacji ALTER TABLE, takich jak DROP COLUMN, ALTER COLUMN, ADD CONSTRAINT i tak dalej, są pomijane.

Tak więc nie ma możliwości zmodyfikowania istniejącej kolumny w SQLite. Myślę, że będziesz musiał utworzyć nową tabelę z odpowiednią wartością domyślną dla hidden, skopiuj wszystkie dane, upuść oryginalny tabelę notes, a następnie rename the new one.

SQLite pozostaje szczupły, celowo pomijając wiele funkcji.

+1

Jedna kwestia może pomóc w tym zakresie. Przed uruchomieniem 'drop table ' upewnij się, że uruchomisz '.dump' i otrzymasz zrzut schematu oraz dane. Następnie można go użyć do szybkiego utworzenia zmodyfikowanego schematu i przetworzenia danych. – codarrior

0

Przeglądarka baz danych SQLite umożliwia usuwanie kolumn, dzięki czemu można z niej upuścić kolumnę, a następnie ręcznie dodać kolumnę z wartością domyślną za pomocą narzędzia wiersza poleceń sqlite3.

+0

Niestety, aby to osiągnąć, prawdopodobnie wykonuje wszystkie rodzaje podstępów pod maską, jak tworzenie tabeli tymczasowej: | http://stackoverflow.com/q/805363/32453 – rogerdpack

Powiązane problemy