oracle数据库常用语句汇总2(修改)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/william_zhangsun/article/details/78031482

这次汇总主要是对于数据库表修改方面。
1.在已经创建好的数据表中,添加字段
alter table table_name add( column_name type(length))这是个固定语法,在实际中可以套用,比如给student表添加一个score字段,类型为number,可以这样写:alter table student add(score number(4,1))。
2.在已经建好的数据表中,修改列名
alter table table_name rename old_column_name to new_column_name,其中old_column_name表示要修改的原列名,new_column_name表示目标列名,比如修改student表中name为studentname,就可以这样写alter table student rename name to studentname.
3.在已经建好的数据表中,修改列类型或者数据长度
在这种情况下,存在两种情况,我们一一分析:
(1)修改列的长度,字段类型不变,在这种情况下,不管其数据表中是否存在数据都可以直接进行修改,但是修改的列的长度一般大于原长度,如果小于,则要看数据表中的值是否满足要求,如果不满足,则需要修改字段值或者将字段类型长度加大,具体语法如下:alter table table_name modify (name varchar2(10)),其中列名必须是存在的,如果不存在,执行则会出错。
(2)长度和字段类型都发生变化,这种情况下,如果要修改的列下没有数据,则可以直接进行修改,如果要修改的列下存在数据,则需要将数据进行清空再修改。首先需要update tablename set column_name=null,然后在进行修改:alter table table_name modify (column_name type(length)),或者将数据进行转移,需要新建字段:alter table table_name add (new_column type(length)),然后再进行数据转移:update table_name set new_column=src_column,src_column=null,最后就是修改操作alter table table_name modify (src_column type(length)).
4.在已建好的表中,删除字段
删除字段不管该列名下是否已经存在值,都可以进行删除列名的操作,具体语法如下: alter table table_name drop column column_name;

猜你喜欢

转载自blog.csdn.net/william_zhangsun/article/details/78031482