受限操作的变通解决方案
各个数据库系统中提供的修改表结构的方法是不同的,有的提供了修改表名、修改字段类型、修改字段名称等操作的SQL语句,而有的则没有提供这些功能,甚至有的数据库系统连删除字段的功能都不支持。但是这些操作有的时候又是必要的,那么有没有变通的手段来实现这些功能呢?答案是有!
在DB2中如果要在表T中删除一个字段F1,那么可以首先创建一个表T1,这个表T1的结构和表T 结构一致,唯一区别就是缺少字段F1;接着将表T 中的数据导出到T1 中,然后将表T删除;最后将表T1 重命名为T就可以了。这样就可以达到修改表名的效果了。
在不支持修改字段名称操作的数据库系统上同样可以采用类似策略来解决。比如我们要将表T的F1 字段重命名为F2,那么首先在表T上创建新字段F2,类型和F1 一致,然后将F1 的数据复制到F2 上,最后将字段F1 删除就可以了。这样就可以达到修改字段名称的效果了。
https://github.com/godmaybelieve