您的位置:首页 > 数据库 > Oracle

oracle创建和维护表

2015-08-06 19:32 381 查看
1、Oracle中数据库对象命名原则

必须由字母开始,长度在1-30个字符之间

名字中只能包含A-Z,a-z,0-0,_,$和#

同一个Oracle服务器用户所拥有的对象名字不能重复。

名字不能为Oracle的保留字

名字是大小写不敏感的

2、创建表的语法

CREATE TABLE [schema.]table

(column datatype [DEFAULT expr][, ...]);

3、数据类型

数据类型(字符型)

数据类型 说明

固定长度字符型数据,长度的大小以字节为单位,默认和最小长度为

CHAR(size)

1;最大长度为2000

VARCHAR2 (size) 1 4000

可变长度字符数据,最小长度是 ;最大长度是

CLOB 4G

可变长度字符数据,最大可存储 数据

数据类型(数值型)

数据类型 说明

- 10 125

数值型:可以表示整数,也可以表示小数,表数范围 的 次方

NUMBER

10 126

到 的 次方。

NUMBER(n) 整型

p s p-s p

数值型:总长度为 ,小数位最大为位,整数位最大为 位, 的

NUMBER(p,s)

1 38 s -84 127

范围从 到 , 的范围从 到

NUMBER(p,s):数值型:总长度为p,小数位最大为s位 ,整数位最

大为p-s位,p的范围从1到38,s的范围从-84到127。

–S>0:只能表示小数,精确到小数点右边s位,并四舍五入,然后

检验有效数位是否<=p

–S<0:只能表示整数,并且精确到小数点左边s位,进行四舍五入

,然后检验有效数位是否<=p+|s|

–S=0:只能表示整数

–p<s:只能表示数字是绝对值小于1的数字,且从小数点右边开始

的前s-p位必须是0,保留s位小数。

日期型:date 包括年月日时分秒 timestamp 可以精确到毫秒

4、创建表的语法

示例:–示例

CREATE TABLE DOSSIER (

ID NUMBER(4),

CNAME VARCHAR2(20 ),

BIRTHDAY DATE,

STATURE NUMBER(3),

WEIGHT NUMBER(5, 2),

COUNTRY_CODE CHAR(2 ) DEFAULT ‘01’);

5、使用子查询创建表

CREATE TABLE table [(column,column....)] as (子查询)

示例:create table copy_emp as select * from emp (where?)

6、修改表定义

–添加列语法:

ALTER TABLE table

ADD (columnname datatype[DEFAULT expr]

[, columnname datatype]...);

–修改列语法:

ALTER TABLE table

MODIFY(columnname datatype[DEFAULT expr]

[, columnname datatype]...);

–删除列语法:

ALTER TABLE table

DROP (columnname [,columnname]);

注意: 8i版本之后,可以修改列名字

–ALTER TABLE 表名 RENAME COLUMN 原有列名 TO 新列名 。

7、删除表

DROP TABLE table;

8、重命名表

RENAME old_name TO new_name;

9、截断表(删除表中的数据)

TRUNCATE TABLE table;

–TRUNCATE是DDL,只能删除表中所有记录,释放存储空间,

使用ROLLBACK不可以回滚。

–DELETE是DML,可以删除指定记录,不释放存储空间,使用

ROLLBACK可以回滚
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: