您的位置:首页 > 数据库

数据库复习--三范式、基本数据类型、完整性、存储过程

2011-07-28 15:33 309 查看
1、三范式:
第一、无重复的列。它要求表中的每一列都是不可分割的基本数据项。
第二、主键。它要求每一行必须可以被唯一区分。
第三、外键。它要求一个表中不保护已在其他表中的非主关键字信息。例子,如员工表和部门表。
2、主要的数据类型:
字符型、数字型、日期型、二进制型、布尔型、大对象型
ORACLE主要数据类型举例:
字符型:VARCHAR2(100)\NVARCHAR2(100)\CHAR(100)\NCHAR(100)
数字型:NUMBER(5,2)\NUMBER(5)
日期型:DATE
二进制型:RAW(10)
布尔型:RAW(1)
大对象型:CLOB\NCLOB\BLOB
3、添加主键约束 :
ALERT TABLE STUDENT ADD CONSTRAINT STU_ID_PK ON PRIMARY KEY(STUDENTID);
4、数据完整性:
作用:对数据库中数据正确性的维护。
三方面:实体完整性规则、参照物完整性规则以及用户自定义完整性规则。
5、触发器:
触发器(trigger)是个特殊的,它经常用于加强数据的完整性约束和业务规则等。
CREATE TRIGGER DATAMART.TRIGGER1
AFTER DELETE ON APIINFO
FOR EACH ROW
BEGIN
DELETE FROM APIINDICATOR WHERE APIID NOT IN (SELECT ID FROM APIINFO)
END
6、存储过程
是一个完成特定功能的SQL块。预先被以一个名字存起来,用时可以通过EXECUTE方式调用。
7、PL/SQL
7.1 PL/SQL分成三部分:
声明部分(DECLARE)、执行部分(BEGIN开头)和异常处理部分(以EXCEPTION开头)。
DECLARE V_ID INTEGER;
V_NAME VARCHAR2(20);
BEGIN OPEN c_emp;
LOOP
FETCH C_EMP INTO V_ID,V_NAME;
END LOOP;
7.2 控制结构:
条件结构(if ... then ... else ...)、循环结构(loop ...end loop)和循序结构(goto)
7.3 PL/SQL存储过程实例
将数据插入表T1的存储过程
create or replace procedure bright_pr as
vf11 number:=1;
vf12 number:=2;
vf21 varchar:='bright';
vf22 varchar:='sisi';
begin
insert into student values(vf11,vf21);
insert into student values(vf12,vf22);
end
8、游标
游标的定义为:用游标来指代一个DML SQL操作返回的结果集 如:cursor curs_emp is select * from emp where empno>100
当需要操作该结果集时,必须完成三步:打开游标(OPEN CURS_EMP)、使用fetch语句将游标里的数据取出关闭游标(CLOSE CURS_EMP)
8、SQL基本语言:
DDL(CREATE,DROP,GRANT,REVOKE...)\DML(SELECT,DELETE,UPDATE,ADD)\DCL(COMMIT,ROLLBACK...)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: