Вверх ↑
Ответов: 16884
Рейтинг: 1239
#1: 2011-10-23 11:42:30 ЛС | профиль | цитата
В SQLite столбец просто не передвинуть.
Только так:
1. Создать временную таблицу с нужным расположением столбцов.
2. Скопировать записи в временную новую таблицу:
INSERT INTO <временная новая таблица> SELECT <перечислить столбцы в нужном порядке> FROM <старая таблица>;
3. Удалить старую таблицу:
DROP TABLE <старая таблица>;
4. Создать таблицу со старым названием, но с новым расположением столбцов.
5. INSERT INTO <вновь созданную таблицу со старым названием> SELECT * FROM <временная новая таблица>;
6. DROP TABLE <временная новая таблица>;
7. VACUUM;
или так (всего за пять ходов )
1. Переименовать старую таблицу:
ALTER TABLE <имя таблицы> RENAME TO <aaaaaaaaaaa>;
2.Создать таблицу со старым названием, но с новым расположением столбцов.
CREATE TABLE <старое название>(<перечислить столбцы в нужном порядке>);
3. Скопировать записи :
INSERT INTO <старое название> SELECT <перечислить столбцы в нужном порядке> FROM <aaaaaaaaaaa>;
4. Удалить <aaaaaaaaaaa> таблицу:
DROP TABLE <aaaaaaaaaaa>;
5. VACUUM

карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0