Oracle的SQL性能优化 (三)用例
表结构:
--ALTER TABLE DEPT DROP PRIMARY KEY CASCADE;
--DROP TABLE DEPT CASCADE CONSTRAINTS;
CREATE TABLE DEPT
(
DEPT_ID INTEGER,
DEPT_NAME VARCHAR2(50 BYTE)
);
CREATE UNIQUE INDEX DEPT_PK ON DEPT(DEPT_ID);
ALTER TABLE DEPT ADD (CONSTRAINT DEPT_PK PRIMARY KEY (DEPT_ID) USING INDEX);
--ALTER TABLE EMP DROP PRIMARY KEY CASCADE;
--DROP TABLE EMP CASCADE CONSTRAINTS;
CREATE TABLE EMP
(
EMP_ID INTEGER,
EMP_NAME VARCHAR2(50 BYTE),
DEPT_ID INTEGER
);
CREATE INDEX EMP_IDX ON EMP(DEPT_ID);
CREATE UNIQUE INDEX EMP_PK ON EMP(EMP_ID);
ALTER TABLE EMP ADD ( CONSTRAINT EMP_PK PRIMARY KEY (EMP_ID) USING INDEX);
构造数据:
DECLARE I INT;
BEGIN
I:=1;
WHILE I<200
INSERT INTO DEPT(DEPT_ID,DEPT_NAME)
VALUES(I,'Dept' || I);
i:=i+1;
END
commit;
end;
DECLARE
i INT;
j INT;
BEGIN
i := 1;
j := 1;
WHILE i < 20
WHILE j < i * 10
INSERT INTO emp (emp_id, emp_name, dept_id)
VALUES (j, 'Emp' || j, i);
j := j + 1;
END
i := i + 1;
END LOOP commit;
END;