这节课我们主要介绍表的操作,索引、序列、视图、同义词这块内容我们下一节介绍。
二、表的创建
1、数据库中主要主要保存数据,而数据是以什么形式保存的呢?表由行、列两个重要元素构成。
行结构行由头、长度、行值组成。
2、表名和列名命名的规则:
(1)必须只包含字母a - z、a - z,0 - 9,_,$,#
(2)而且必须字母开头
(3)不能超过30个字节,
(4)不能包含特珠字母,
(5)在同一个用户下表名不能和其它对象同名
(6)不要使用Oracle的保留字(select * from v$reserved_words order by keyword;)
注:当加上双引号就可以使用保留字,但是不推存!!!!
3、创建表的步骤
(1)查数据库文件
FILE# NAME
---------- --------------------------------------------------
10 /u01/app/oracle/oradata/ocm/undotbs02.dbf
5 /u01/app/oracle/oradata/ocm/example01.dbf
(2)创建表空间
Tablespace created.
(3)创建用户
User created.
(4)给用户授权
Grant succeeded.
(5)创建表
2 (deptno NUMBER(2),
3 dname VARCHAR2(14),
4 loc VARCHAR2(13),
5 create_date DATE DEFAULT SYSDATE);
Table created.
gyj@OCM> select * from gyj.dept;
no rows selected
这个命令中,CREATE TABLE是创建表的命令,dept表名,deptno 、dname 、age 、loc 、create_date是列的名字。
NUMBER和VARCHAR2,SYSDATE是列的类型。
NUMBER (2)表示,此列只能包括2位数以内的整数。如果需要小数,可以这样:NUMBER (10 ,2) ,10是总长度,2是小数位数,整个数据的长度是整数8位、小数2位。
VARCHAR2是字符型,括号中的数字是字符串的长度。
SYSDATE是系统时间,DEFAULT表示给列create_date设一个默认值:当时插入记录时的系统时间。
4、表的类型
(1)根据表中数据的用途,我们可以将表分为两大类:用户表和数据字典表
(2)表存储、组织数据方式的不同,我们可以将表分为:堆表、索引组织表、聚簇表
5、数据类型
(2)数字型:NUMBER,是可变的,最多可以存储 38 个有效数位
(3)日期型:DATE 固定为7个字节,TIMESTAMP 这是一个7字节或11字节,可以带小数秒,最多保留9位
(4)RAW 数据类型:最多2000个字节,不做任何字符集转换
(5)LONG、LONG RAW(2G) 和大型对象LOB 数据类型 (4G)
(6)ROWID与UROWID:ROWID是18位,实际只存12位(不存储对象号6位),UROWID主要在索引组织表中使用
三、利用子查询创建表简称CTAS
2 AS SELECT employee_id, last_name,
3 salary*12 ANNSAL,
4 hire_date FROM hr.employees WHERE department_id = 80;
Table created.
四、修改表
1、增加列
Table altered.
2、修改的列名称
Table altered.
3、禁用列的主键约束
Table altered.
4、删除列
gyj@OCM> alter table t1 drop column addresses;
Table altered.
5、为列定义一个默认值
Table altered.
6、删除表
Table dropped.
(1)删除T1表中的数据和T1表的结构。
(2)drop会隐式提交,会把当面会话没提交的事务进行提交。
(3)删除T1表的索引。
(4)删除T1表的约束。
(5)drop操作不能被回滚。
**********本博客所有内容均为原创,如有转载请注明作者和出处!!!**********
Name: guoyJoe
QQ: 252803295
Email: oracledba_cn@hotmail.com
Blog: http://blog.youkuaiyun.com/guoyJoe
ITPUB: http://www.itpub.net/space-uid-28460966.html
OCM: http://education.oracle.com/education/otn/YGuo.HTM
_____________________________________________________________
加群验证问题:哪些SGA结构是必需的,哪些是可选的?否则拒绝申请!!!
答案在:http://blog.youkuaiyun.com/guoyjoe/article/details/8624392
Oracle@Paradise 总群:127149411
Oracle@Paradise No.1群:177089463(已满)
Oracle@Paradise No.2群:121341761
Oracle@Paradise No.3群:140856036