增加表的字段alter table 表名 add 字段名 列属性
alter table xxx1 add age int(11)
修改表的字段(重命名、修改约束)
alter table xxx1 modify age varchar(11) -- 修改约束alter table xxx1 change age age1 int(11) -- 字段重命名
删除表的字段
alter table xxx1 drop age11、通过图形界面 *** 作,在左侧依次选择objects-tables,右键单击要修改的表名,选中‘Edit’-column,可以直接修改;2、使用DDL语句:alter table 表名 modify 字段名(字符类型(长度))
例如:
alter table emp modify ename(varchar2(32))
修改方法:
使用update语句。语法是:update table_name set column = value[, colunm = value...] [where condition]
[ ]中的部分表示可以有也可以没有。
例如:update students set stu_name = "zhangsan", stu_gender = "m" where stu_id = 5
具体 *** 作方法:
a lter table table_name add xxoo number(4) default 0
因此 不仅要修改字典, 还要刷新全部数据.
1) 在ALTER sql中有带缺省值,ORACLE 会直接刷新全部的记录。
2) 在ALTER sql中没有带缺省值,ORACLE 只会影响到后来的记录。
1 2 3 4 alter table table_name add xxoo number(4) default nullTable altered,Executed in 0.062 seconds。
带有default null 就可以了?,1 2 3 4 alter table table_name add xxoo number(4) default 0Table altered,Executed in 1.625 seconds,原来的话 要更新所有的行, 会导致UNDO 段占用
使用语句Alter table a add test number(10) default 0更新一个大表中字段时,表有四个分区,数据达到几十亿行,增加一个字段竟然要几个小时的时间,修改语句加上Nologging ,怎么没有作用呢?去找是不是哪有锁了呢,使用语句 select *。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)