使用sql更改以'C'字母开头的列名?

时间:2014-10-25 08:10:24

标签: sql sqlite ddl alter-table

假设我有这张桌子: enter image description here

我想要做的是将所有以字母C开头的列名更改为另一个字母或另一个字。 我在SQL方面不是很好,我有能力使用Java或其他任何程序语言来完成这项工作。 但我的目的只是使用SQL。

有可能吗?

1 个答案:

答案 0 :(得分:1)

您需要删除并重新创建表格。

所以:

1)创建一个包含原始表的所有数据和结构的临时表。这允许您删除原始文件,然后使用相同的名称重新创建它。

Create Table temp as select * from [Table_Name]

2)放下原始表格。

Drop table [Table_Name]

3)使用新列名创建新表。

Create Table Table_Name
   (Name varchar(20),
    Age int,
    [New_C1] int,
    [New_C2] int),
    [New_C3] int),
   )

4)将临时表中的数据插入新表:

Insert into Table_Name (Name, Age, New_C1, New_C2, New_C3)
Select (Name, Age, C1, C2, C3) FROM temp

5)删除临时表:

Drop table temp

注意

  • 我强烈建议在事务中包装它,这样就可以回滚。