我有一个列的表name,qty,rate。现在,我需要COLNew在name和qty列之间添加一个新列。如何在两列之间添加新列?
name,qty,rate
COLNew
name
qty
您有两个选择。首先,您可以简单地添加带有以下内容的新列:
ALTER TABLE {tableName} ADD COLUMN COLNew {type};
其次,更复杂的是,实际上会将列放在所需的位置,这将是重命名表:
ALTER TABLE {tableName} RENAME TO TempOldTable;
然后使用缺少的列创建新表:
CREATE TABLE {tableName} (name TEXT, COLNew {type} DEFAULT {defaultValue}, qty INTEGER, rate REAL);
并用旧数据填充它:
INSERT INTO {tableName} (name, qty, rate) SELECT name, qty, rate FROM TempOldTable;
然后删除旧表:
DROP TABLE TempOldTable;
我更喜欢第二个选项,因为它可以让您在需要时完全重命名所有内容。