SQLite重新排序表?

时间:2011-05-10 20:02:51

标签: sqlite

您可以通过查询重新排序SQLite表列吗?

我更喜欢查询方法,但如果不可能,还有其他方法吗?

1 个答案:

答案 0 :(得分:2)

是的,您可以按照在查询中命名的顺序来控制列的顺序。这两个查询都返回相同的行,但列的顺序不同。

select first_column_name, second_column_name
from mytable;

select second_column_name,  first_column_name
from mytable;

如果希望显示基表中的列已永久更改,则可以使用视图。

create view mytable_reordered
select second_column_name,  first_column_name
from mytable;

如果您希望使更改对应用程序透明,您首先要重命名该表,然后创建视图,为其提供表的旧名称。最后,您将跳过dbms所需的任何箍,以使该视图可更新。在SQLite中,我认为这意味着编写代码来实现一些INSTEAD OF triggers