使用数据库为Oracle
因为在将数据从历史表导入当前表时,因字段个数不对,导致不能导数据。
一、将历史表的字段增加一个或者多个的SQL语句。
1、增加一个字段:(增加字段时,只能排在已有字段的后面,不能插到已有字段之间)
Alter Table t_app_si_addr_12 Add CHG_ADDR_FLAG varchar2(2);
Alter Table 表名 Add 字段名称 字段类型;
2、增加两个字段;
Alter Table t_app_si_addr_12 Add (CHG_ADDR_FLAG varchar2(2),ADD_IP_BY_IOM Varchar2(2));
Alter Table 表名 Add (字段名称 字段类型,字段名称 字段类型);
注意:在SQL server中增加多个字段,不需要加括号。
二、修改一个字段:
create table t_od_test1017(id number(2),name varchar2(4),test varchar2(10));
select a.*,a.rowid from t_od_test1017 a;
1、修改字段的类型或长度:
alter table t_od_test1017 modify (test3 number(32));--修改字段类型或长度。
Alter Table 表名 modify (字段名称 (新的)字段类型);
注意:当此列有数据时,不能将字段的长度减小,只能增加长度。
2、修改字段的名称:
alter table t_od_test1017 rename column test3 to new_test3;
Alter Table 表名 rename column (旧的)字段名称 to (新的)字段名称;
在SQL server中,以上语句不行,已经实测。
正确的命令是:exec sp_rename '[BB].[OldCol]','NewCol'
-- 注意逗号后面,没有表名,没有点号,没有方括号,执行这句,才能得到你想要的结果“NewCol”,
三、删除一个字段:
alter table t_od_test1017 drop column test2;
alter table t_od_test1017 drop column 字段名称;
注意:删除字段时候,保证此字段下没有数据。