Add*_*dev 15 sql sqlite android
我有下表:
[id,lang,data]
Run Code Online (Sandbox Code Playgroud)
主键是哪里 id
我想更改主键, id,lang而不会丢失表的内容.我必须运行哪些查询才能更改它
谢谢
Pin*_*nyM 35
根据@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;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12318 次 |
| 最近记录: |