一:表
5.1;建立一个表
用PL/SQL建立一个表
CREATE TABLE NEW_DEPT(
DEPTNO NUMBER(2),
DNAME CHAR(6),
LOC CHAR(12)
);
1:一定要有的一阔号;
2:标点符号一定要是英文;
3;最后一行数据应该是没有标点符号;
ALTER TABLE NEW_DEPT
MODIFY DNAME CHAR(20)
4:一定要有管理员权限才有可能建立此表
表名和列名的定义要满足一定的规则,既表名和列名的第一个字母必须是英文字母,后面的字符可以是字母或数字及$,#等符号,但不能用逗号,名称长度,不能超过30个字符。
数据类型一般有CHAR(字符型);NUMBER(数值型);DATE(日期型);LONG(长字符型);RAW(二进制型);CHAR(N)表示字符长度;NUMBER(n,d)来分别定义数值开进数据的长度和小数点位数;
在某些情况下,用户可能不准数据为空,可能要在后面加上NOT NULL;
5.2:表的修改
增加一列
ALTER NEW_DEPT
ADD(HEADCNT NUMBER(2))
修改数据长度(由10变成20)
ALTER TABLE NEW_DEPT
MODIFY DNAME CHAR(20)
5.3表的删除
DROP TABLE NEW_DEPT
二:视图
视图实际是一种虚拟表;其数据是由其它表和视图中提取的。将视图所基于的表称为基表;
提供了附加的安全级
隐藏数据的的复杂性
可以提供变换列名的手段,而无需真正地改变基表的定义
由于视图并不包含数据,除了视图名称后,还需要说明如何从已存在的表中检索数据以构成视图。
CREATE VIEW MANAGER AS
SELECT ENAME,JOB,SAL
FROM NEW_DEPT
WHERE JOB='MANAGER'
在建立视图时,不能使用ORDER BY子句来规定视图数据的来源。默认情况下,视图中的列名与原来基表中的列名一样;
以下则是列名都变了
CREATE VIEW MYDEPT
(PERSON,TITLE,SALARY)
AS SELECT ENAME,JOB,SAL
FROM NEW_DEPT
WHERE JOB='MANAGER'
不准超出视图所能选择的行的范围
CREATE VIEW MANAGER
(PERSON,TITLE,SALARY)
AS SELECT ENAME,JOB,SAL
FROM NEW_DEPT
WHERE JOB='MANAGER'
WITH CHECK OPTION
视图的删除
DROP VIEW VIEW_NAME
三,表和视图的复制
表的拷贝
CREATE TABLE EMP2
AS SELECT *
FROM EMP
视图的复制
CREATE VIEW NEW_DEPT20
AS SELECT * FROM DEPT20
参考