Usuwanie kolumn z tabel SpatiaLite - Wersja do druku +- Forum QGIS (http://forum.quantum-gis.pl) +-- Dział: Desktop GIS (http://forum.quantum-gis.pl/forum-4.html) +--- Dział: QGIS (http://forum.quantum-gis.pl/forum-5.html) +--- Wątek: Usuwanie kolumn z tabel SpatiaLite (/thread-633.html) |
Usuwanie kolumn z tabel SpatiaLite - tomalos - 03-01-2012 Jakim narzędziem/wtyczką mogę w prosty sposób usunąć kolumny w tabeli/warstwie, która znajduje się w bazie SpatiaLite? W Table manager nie można, qspatiaLite można chyba tylko tworzyć nowe albo usunąć całą tabelę/warstwę. Edycja -------- Doszedłem, że nie da się tego zrobić bo SQLite nie obsługuje "DROP COLUMN". Można to jakoś obejść? Być może może tak by dało radę (proszę mnie skorygować - nie znam się na SQL): CREATE tabela_nowa ( guid TEXT PRIMARY KEY, kolumna TEXT, kolumna2 INTEGER ); INSERT INTO tabela_nowa SELECT guid, kolumna, kolimna2 FROM tabela_stara; DROP TABLE tabela_stara; ALTER TABLE tabela_nowa RENAME TO tabela_stara; Tylko nie wiem jak przenieść geometrię do nowej tabeli ze starej RE: Usuwanie kolumn z tabel SpatiaLite - rob3rt - 04-01-2012 W spatialite-gui jest opcja usuwania kolumny. Z palca łatwiej użyć:"create table nazwa-tabeli-tymczasowa as select" i wybieramy wszystkie kolumny poza tą do usunięcia. Na koniec jak u Ciebie drop table i rename. W spatialite-gui jest też zacne narzędzie do wybierania. |