Случай 1: SQLite 3.25.0 +
Только версия 3.25.0 SQLite поддерживает переименование столбцов. Если ваше устройство отвечает этому требованию, все довольно просто. Следующий запрос решит вашу проблему:
ALTER TABLE "MyTable" RENAME COLUMN "OldColumn" TO "NewColumn";
Случай 2: Более старые версии SQLite
Вы должны следовать другому подходу, чтобы получить результат, который может быть немного хитрым
Например, если у вас есть такая таблица:
CREATE TABLE student(Name TEXT, Department TEXT, Location TEXT)
А если вы хотите изменить имя столбца Location
Шаг 1: Переименовать исходную таблицу:
ALTER TABLE student RENAME TO student_temp;
Шаг 2: Теперь создайте новую таблицу student
с правильным именем столбца:
CREATE TABLE student(Name TEXT, Department TEXT, Address TEXT)
Шаг 3: Скопировать данные из исходной таблицы в новую таблицу:
INSERT INTO student(Name, Department, Address) SELECT Name, Department, Location FROM student_temp;
Примечание. Приведенная выше команда должна состоять из одной строки.
Шаг 4: Оставить исходный стол:
DROP TABLE student_temp;
С помощью этих четырех шагов вы можете вручную изменить любую таблицу SQLite.
Имейте в виду, что вам также потребуется заново создать любые индексы, средства просмотра или триггеры для новой таблицы.