oracle认证辅导:oracle语句速查(2)Oracle认证考试

文章作者 100test 发表时间 2009:11:11 16:39:20
来源 100Test.Com百考试题网


"gklt">

  3修改表结构

  修改表结构是对已经创建完成(实际是存放在数据库字典里)的表的结构进行修改。不同的Oracle版本允许对表的修改也不一样。新版的Oracle8i可以对表中的列进行删除。

  3.1 修改表结构命令修改表结构的命令由ALTER TABLE来完成。该命令的参数较多,下面仅给出一些基本的部分。详细请参考《ORACLE8i SQL REFERENCE》 。

  ALTER TABLE [user.] table

  [ADD ({colum_element|table_constraint}

  [,{column_element|table_constraint}]...)] [MODIFY(column_element[,column_element]...)] [DROP CONSTRAINT constraint]...

  [PCTFREE integer][PCTUSED integer]

  [INITRANS integer][MAXTRANS integer]

  [STORAGE storage]

  [BACKUP]

  ALTER TABLE可以作的操作有:

  l增加一个列(字段)宽度;

  l减少一个列(字段)宽度(该列必须无数据);

  l增加一个列(字段).

  l修改列的定义;

  l   或一个限制;(如数据类型,NOT NULL);仅当某列的值为空时才能修改其类型;

  l去掉限制;

  l修改存储分配;

  l记录表已作过BACKUP;

  l删除已存在的列(仅Oracle8i及以后版本);

  l重新定位和组织表(仅Oracle8i及以后版本);

  l   将表标识为不可用(仅Oracle8i及以后版本)。

  3.2 修改表结构例子

  例1:对已经存在的表增加一新的列:

  SQL>.alter table dept add ( headcount number(3) ).

  例2:对表的列修改其大小:

  SQL>.alter table dept modify( Dname char(20) ).

  如果被修改的列没有空(已有数据),则被提示:

  ORA-01439: Column to be modified must be empty to change

  datatype

  ORA-01441: Column to be modified must be empty to decrease

  column length


相关文章


oracleimp_exp命令使用Oracle认证考试
oracle忘记用户名密码怎样恢复Oracle认证考试
Oracle中NUMBER类型问题Oracle认证考试
Oracle查询表名及模糊查询Oracle认证考试
oracle认证辅导:oracle语句速查(2)Oracle认证考试
oracle认证辅导:oracle语句速查(1)Oracle认证考试
SQL2000附加SQL2005数据具体方法Oracle认证考试
如何删除数据库中的冗余数据(2)Oracle认证考试
如何删除数据库中的冗余数据(1)Oracle认证考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛