WEB开发网
开发学院数据库Oracle 帮你充分认识 Oracle数据库表与视图 阅读

帮你充分认识 Oracle数据库表与视图

 2007-05-09 12:14:24 来源:WEB开发网   
核心提示: 从其它表中建立表可以使用查询从基于一个或多个表中建立表,表的列的数据类型和大小有查询结果决定,帮你充分认识 Oracle数据库表与视图(2),建立这种形式的表的查询可以选择其他表中所有的列或者只选择部分列,在CREATE TABLE语句中使用关键字AS,重新建立数据库,在ORACLE8i中

从其它表中建立表

可以使用查询从基于一个或多个表中建立表,表的列的数据类型和大小有查询结果决定。建立这种形式的表的查询可以选择其他表中所有的列或者只选择部分列。在CREATE TABLE语句中使用关键字AS,例如:

SQL>CREATE TABLE emp AS SELECT * FROM employee
TABLE CREATED
SQL> CREATE TABLE Y AS SELECT * FROM X WHERE no=2

需要注意的是如果查询涉及LONG数据类型,那么CREATE TABLE....AS SELECT....将不会工作。

更改表定义

在建立表后,有时候我们可能需要修改表,比如更改列的定义,更改缺省值,增加新列,删除列等等。Oracle使用ALTER TABLE语句来更改表的定义。

1、增加列

语法:

ALTER TABLE [schema.] table_name ADD column_definition

例:

ALTER TABLE orders ADD order_date DATE;
TABLE ALTER

对于已经存在的数据行,新列的值将是NULL.

2、更改列

语法:

ALTER TABLE [schema.] table_name MODIFY column_name new_attributes;

例:

ALTER TABLE orders MODITY (quantity number(10,3),status varchar2(15));

这个例子中我们修改了表orders,将STATUS列的长度增加到15,将QUANTITY列减小到10,3;

修改列的规则如下:

. 可以增加字符串数据类型的列的长度,数字数据类型列的精度。

. 减少列的长度时,该列应该不包含任何值,所有数据行都为NULL.

. 改变数据类型时,该列的值必须是NULL.

. 对于十进制数字,可以增加或减少但不能降低他的精度。

3、删除数据列

优化ORACLE数据库,唯一的方法是删除列,重新建立数据库。在ORACLE8i中有很多方法删除列,你可以删除未用数据列或者可以标示该列为未用数据列然后删除。

上一页  1 2 3 4  下一页

Tags:充分 认识 Oracle

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接