Создание схемы SCOTT/TIGER в ручную

В предыдущей заметке рассказывалось о создании и настройке тестовой схемы SCOTT/TIGER с помощью сценария Если же доступ к файлу demobld.sql отсутствует,  то для работы с примерами (из обучающей литературы, статей, блогов) достаточно выполнить следующие команды:

CREATE TABLE ЕМР (EMPNO NUMBER(4) NOT NULL, ENARE VARCAR2 (10), JOB VARCA2 ( 9), 
                  MGR NUMBER ( 4), HIREDATE DATE, SAL NUMBER(71 2), СОММ NUMBER(7, 2),
                  DEPTNO NUMBER(2));

INSERT INTO ЕМР VALUES (7369, 'SMITH', 'CLERK',	7902,
                        TO_DATE('17-DEC-1980', 'DD-MON-YYYY'),	800, NULL, 20);

INSERT INTO ЕМР VALUES (7499, 'ALLEN',	'SALESMAN',	7698,
                       TO_DATE('20-FEB-1981', 'DD-MON-YYYY'), 1600,	300, 30);

INSERT INTO ЕМР VALUES (7521, 'WARD', ' SALES№N ' ,	7698,
                       TO_DATE('22-FEB-1981', 'DD-MON-YYYY'), 1250,	500, 30);

INSERT INTO ЕМР VALUES (7566, 'JONES', 'MANAGER', 7839, TO_DATE('2-APR-1981', 
                       'DD-MON-YYYY'), 2975, NULL, 20); 

INSERT INTO ЕМР VALUES (7654, 'MARTIN' , ' SALES№N ' ,	7698,
                        TO_DATE('28-SEP-1981', 'DD-MON-YYYY'), 1250, 1400, 30); 

INSERT INTO EMP VALUES (7698, 'BLAKE', '№NAGER',	7839,
                        TO_DATE('1-MAY-1981', 'DD-MON-YYYY'), 2850, NULL, 30); 

INSERT INTO EMP VALUES (7782, 'CLARK', 'MANAGER',	7839,
                        TO_DATE('9-JUN-1981', 'DD-MON-YYYY'), 2450, NULL, 10); 

INSERT INTO EMP VALUES (7788, 'SCOTT', 'ANALYST', 7566, 
                        TO_DATE('09-DEC-1982', 'DD-MON-YYYY'), 3000, NULL, 20); 

INSERT INTO EMP VALUES (7839, 'KING', 'PRESIDENT', NULL, 
                       TO_DATE('17-NOV-1981', 'DD-MON-YYYY'), 5000, NULL, 10); 

INSERT INTO EMP VALUES (7844, 'TURNER', 'SALESMAN',	7698,
                       TO_DATE('8-SEP-1981', 'DD-MON-YYYY'), 1500,	0, 30);

INSERT INTO EMP VALUES (7876, 'ADAMS', 'CLERK', 7788, 
                        TO_DATE('12-JAN-1983', 'DD-MON-YYYY'), 1100, NULL, 20) ; 

INSERT INTO EMP VALUES (7900, 'JAMES', 'CLERK', 7698, 
                        TO_DATE('3-DEC-1981', 'DD-MON-YYYY'), 950, NULL, 30); 

INSERT INTO EMP VALUES (7902, 'FORD', 'ANALYST', 7566, 
                        TO_DATE('3-DEC-1981', 'DD-MON-YYYY'), 3000, NULL, 20); 

INSERT INTO EMP VALUES (7934, 'MILLER', 'CLERK', 7782, 
                        TO_DATE('23-JAN-1982', 'DD-MON-YYYY'), 1300, NULL, 10);

CREATE TABLE DEPT (DEPTNO NUMBER(2),
                  DNAME VARCHAR2(14),
                  LOC VARCHAR2(13)
                  ) ;

INSERT INTO DEPT VALUES ( 1 0 , 'ACCOUNTING', 'NEW YОRК');
INSERT INTO DEPT VALUES ( 2 0 , 'RESEARCH', 'DALLAS');
INSERT INTO DEPT VALUES ( 3 0 , 'SALES', 'CHICAG0');
INSERT INTO DEPT VALUES ( 4 0 , '0PERATIONS', 'BOSTON');

Если вы создали схему посредством показанных выше команд, не забудьте выполнить команды создания ограничений поддержания ссылочной целостности (по умолчанию их нет):

 

alter table emp add constraint emp_pk primary key(empno) ;
alter table dept add constraint dept_pk primary key(deptno);
alter table emp add constraint emp_fk_dept foreign key(deptno) references dept;
alter table emp add constraint emp_fk_emp foreign key(mgr) references emp;

Надеюсь данная информация будет полезна для новичков. Обучающая литература буквально пестрит кодом на примере этой схемы, а в новой пустой базе ее может и не быть.

Вас заинтересует / Intresting for you:

Создание, настройка и удаление...
Создание, настройка и удаление... 4158 просмотров Дэн Tue, 21 Nov 2017, 13:28:01
Ввод команд SQL*Plus
Ввод команд SQL*Plus 7462 просмотров Александров Попков Tue, 21 Nov 2017, 13:33:37
Сравнение файлов в Linux и Uni...
Сравнение файлов в Linux и Uni... 2014 просмотров Andrew Tue, 21 Nov 2017, 13:19:25
Условные операторы ветвления и...
Условные операторы ветвления и... 1926 просмотров Алексей Вятский Tue, 21 Nov 2017, 13:19:25
Войдите чтобы комментировать

anders7777 аватар
anders7777 ответил в теме #9203 5 года 6 мес. назад
"Боевая" база данных действительно порой идет уже без этой тестовой схемы, а для экспериментов она нужна. Спасибо за код!