Изменение первичного ключа таблицы в SQLite

У меня есть следующая таблица:

[id,lang,data] 

Где первичный ключ – id

Я хочу изменить первичный ключ на id,lang не теряя содержимого таблицы. Какой запрос я должен выполнить, чтобы изменить его?

благодаря

Solutions Collecting From Web of "Изменение первичного ключа таблицы в SQLite"

Согласно комментарию от @GarnerJosh, вы не можете запустить отдельную команду для ее изменения – SQLite не позволяет изменять существующие структуры таблиц. Вместо этого создайте новую таблицу с составным первичным ключом и скопируйте данные:

 CREATE TABLE my_table_copy( id INTEGER, lang INTEGER, data TEXT, PRIMARY KEY (id, lang) ); INSERT INTO my_table_copy (id, lang, data) SELECT id, lang, data FROM my_table; DROP TABLE my_table; ALTER TABLE my_table_copy RENAME TO my_table;