ORACLE习题

2015-11-21 02:06:25 · 作者: · 浏览: 7
1.创建一个新的表a,表结构及数据与emp一致.

create table a as select * from emp;

2 增加主键约束

alter table a add constraint pk_a_01 primary key(EMPNO);

3.为a增加一个字段birthdate,类型date。

alter table a add(birthdate date);

4.将a表中ename字段修改为定长文本16,修改前将该列数据转移,该列置空,改后再将数据填充回来。

答案:

先把这个列改个列名,然后创建一个新列叫之前的名字,再复制这个字段的数据给新列,最后删除原先的列
alter table a rename column ename to new_ename;
alter table a add(ename varchar(16));
update a set ename=substr(trim(new_ename),1,16);
alter table a drop(new_ename);

?