1. 程式人生 > >資料庫原理 、 SQL(DDL、DML)

資料庫原理 、 SQL(DDL、DML)

  1. DROP TABLEdept;
  2. CREATE TABLE dept
  3. (deptnoNUMBER(2) CONSTRAINTPK_DEPT PRIMARYKEY,
  4.     dnameVARCHAR2(14) ,
  5.     locVARCHAR2(13) ) ;
  6. DROP TABLEemp;
  7. CREATE TABLE emp
  8. (empnoNUMBER(4) CONSTRAINTPK_EMP PRIMARYKEY,
  9.     enameVARCHAR2(10),
  10.     jobVARCHAR2(15),
  11.     mgrNUMBER(4),
  12.     hiredateDATE,
  13.     salNUMBER
    (7,2),
  14.     commNUMBER(7,2),
  15.     deptnoNUMBER(2) CONSTRAINTFK_DEPTNO REFERENCESDEPT);
  16. INSERT INTO dept VALUES
  17.     (10,'ACCOUNTING','NEW YORK');
  18. INSERT INTO dept VALUES
  19. (20,'RESEARCH','DALLAS');
  20. INSERT INTO dept VALUES
  21.     (30,'SALES','CHICAGO');
  22. INSERT INTO dept VALUES
  23.     (40,'OPERATIONS','BOSTON');
  24. SELECT * FROM
    dept;
  25. INSERT INTO empVALUES(7369,'SMITH','CLERK',7902,to_date('17-12-1980','dd-mm-yyyy'),800,NULL,20);
  26. INSERT INTO empVALUES(7499,'ALLEN','SALESMAN',7698,to_date('20-2-1981','dd-mm-yyyy'),1600,300,30);
  27. INSERT INTO empVALUES(7521,'WARD','SALESMAN',7698,to_date('22-2-1981','dd-mm-yyyy'),1250,500,30);
  28. INSERT INTO empVALUES
    (7566,'JONES','MANAGER',7839,to_date('2-4-1981','dd-mm-yyyy'),2975,NULL,20);
  29. INSERT INTO empVALUES(7654,'MARTIN','SALESMAN',7698,to_date('28-9-1981','dd-mm-yyyy'),1250,1400,30);
  30. INSERT INTO empVALUES(7698,'BLAKE','MANAGER',7839,to_date('1-5-1981','dd-mm-yyyy'),2850,NULL,30);
  31. INSERT INTO empVALUES(7782,'CLARK','MANAGER',7839,to_date('9-6-1981','dd-mm-yyyy'),2450,NULL,10);
  32. INSERT INTO empVALUES(7788,'SCOTT','ANALYST',7566,to_date('19-4-87','dd-mm-yyyy'),3000,NULL,20);
  33. INSERT INTO empVALUES(7839,'KING','PRESIDENT',NULL,to_date('17-11-1981','dd-mm-yyyy'),5000,NULL,10);
  34. INSERT INTO empVALUES(7844,'TURNER','SALESMAN',7698,to_date('8-9-1981','dd-mm-yyyy'),1500,0,30);
  35. INSERT INTO empVALUES(7876,'ADAMS','CLERK',7788,to_date('23-5-87','dd-mm-yyyy'),1100,NULL,20);
  36. INSERT INTO empVALUES(7900,'JAMES','CLERK',7698,to_date('3-12-1981','dd-mm-yyyy'),950,NULL,30);
  37. INSERT INTO empVALUES(7902,'FORD','ANALYST',7566,to_date('3-12-1981','dd-mm-yyyy'),3000,NULL,20);
  38. INSERT INTO empVALUES(7934,'MILLER','CLERK',7782,to_date('23-1-1982','dd-mm-yyyy'),1300,NULL,10);
DROP TABLE dept;
CREATE TABLE dept
       (deptno NUMBER(2) CONSTRAINT PK_DEPT PRIMARY KEY,
	dname VARCHAR2(14) ,
	loc VARCHAR2(13) ) ;

DROP TABLE emp;
CREATE TABLE emp
       (empno NUMBER(4) CONSTRAINT PK_EMP PRIMARY KEY,
	ename VARCHAR2(10),
	job VARCHAR2(15),
	mgr NUMBER(4),
	hiredate DATE,
	sal NUMBER(7,2),
	comm NUMBER(7,2),
	deptno NUMBER(2) CONSTRAINT FK_DEPTNO REFERENCES DEPT);

INSERT INTO dept VALUES
	(10,'ACCOUNTING','NEW YORK');
INSERT INTO dept VALUES 
   (20,'RESEARCH','DALLAS');
INSERT INTO dept VALUES
	(30,'SALES','CHICAGO');
INSERT INTO dept VALUES
	(40,'OPERATIONS','BOSTON');

 SELECT * FROM dept;


INSERT INTO emp VALUES(7369,'SMITH','CLERK',7902,to_date('17-12-1980','dd-mm-yyyy'),800,NULL,20);
INSERT INTO emp VALUES(7499,'ALLEN','SALESMAN',7698,to_date('20-2-1981','dd-mm-yyyy'),1600,300,30);
INSERT INTO emp VALUES(7521,'WARD','SALESMAN',7698,to_date('22-2-1981','dd-mm-yyyy'),1250,500,30);
INSERT INTO emp VALUES(7566,'JONES','MANAGER',7839,to_date('2-4-1981','dd-mm-yyyy'),2975,NULL,20);
INSERT INTO emp VALUES(7654,'MARTIN','SALESMAN',7698,to_date('28-9-1981','dd-mm-yyyy'),1250,1400,30);
INSERT INTO emp VALUES(7698,'BLAKE','MANAGER',7839,to_date('1-5-1981','dd-mm-yyyy'),2850,NULL,30);
INSERT INTO emp VALUES(7782,'CLARK','MANAGER',7839,to_date('9-6-1981','dd-mm-yyyy'),2450,NULL,10);
INSERT INTO emp VALUES(7788,'SCOTT','ANALYST',7566,to_date('19-4-87','dd-mm-yyyy'),3000,NULL,20);
INSERT INTO emp VALUES(7839,'KING','PRESIDENT',NULL,to_date('17-11-1981','dd-mm-yyyy'),5000,NULL,10);
INSERT INTO emp VALUES(7844,'TURNER','SALESMAN',7698,to_date('8-9-1981','dd-mm-yyyy'),1500,0,30);
INSERT INTO emp VALUES(7876,'ADAMS','CLERK',7788,to_date('23-5-87','dd-mm-yyyy'),1100,NULL,20);
INSERT INTO emp VALUES(7900,'JAMES','CLERK',7698,to_date('3-12-1981','dd-mm-yyyy'),950,NULL,30);
INSERT INTO emp VALUES(7902,'FORD','ANALYST',7566,to_date('3-12-1981','dd-mm-yyyy'),3000,NULL,20);
INSERT INTO emp VALUES(7934,'MILLER','CLERK',7782,to_date('23-1-1982','dd-mm-yyyy'),1300,NULL,10);