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

  LOOP

     INSERT INTO DEPT(DEPT_ID,DEPT_NAME)

     VALUES(I,'Dept' || I);

     i:=i+1;

  END LOOP

  commit;

end;

 

DECLARE

   i   INT;

   j   INT;

BEGIN

   i := 1;

   j := 1;

   WHILE i < 20

   LOOP

      WHILE j < i * 10

      LOOP

         INSERT INTO emp (emp_id, emp_name, dept_id)

           VALUES   (j, 'Emp' || j, i);

         j := j + 1;

      END LOOP;

      i := i + 1;

   END LOOP commit;

END;

posted @ 2010-06-13 20:36  保尔二世  阅读(146)  评论(0)    收藏  举报