Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Язык SQL: операторы манипулирования данными. Работа с несколькими таблицами.
Фрагмент БД отдела кадров.
1) Создание и заполнение отношений.
create table OTDELY
( ID NUMBER(10) NOT NULL,
NAME VARCHAR2(100) NOT NULL,
CONSTRAINT PK_OTDELY2_1 PRIMARY KEY(ID);
Содержимое поля |
Тип |
Длина |
Дес. |
Примечание |
Табельный номер |
N |
6 |
0 |
первичный ключ |
ФИО |
C |
20 |
|
обязательное поле |
Пол |
C |
1 |
|
по умолчанию мужской |
Дата рождения |
D |
|
|
|
Образование |
C |
20 |
|
высшее, среднее, начальное |
Номер отдела |
N |
3 |
0 |
внешний ключ |
Должность |
C |
20 |
|
обязательное поле |
create table SOTRUDNIKI
( TAB_NOM NUMBER(4) NOT NULL,
FIO VARCHAR2(20) NOT NULL,
POL VARCHAR2(1) DEFAULT 'м' NOT NULL,
DATE_ROJD DATE,
OBRAZOVANIE VARCHAR2(20) NOT NULL,
ID_OTDELA NUMBER(3) NOT NULL,
DOLJNOST VARCHAR2(15) NOT NULL,
CONSTRAINT FK_SOTRUDNIK2_1 FOREIGN KEY(ID_OTDELA)
REFERENCES OTDELY(ID),
CONSTRAINT PK_SOTRUDNIK2_1 PRIMARY KEY(TAB_NOM)
);
create table DETI
( ID NUMBER(10) NOT NULL,
NAME VARCHAR2(100) NOT NULL,
DATE_ROJD VARCHAR2(10) NOT NULL,
CONSTRAINT FK_DETI_1 FOREIGN KEY(ID)
REFERENCES SOTRUDNIKI2(TAB_NOM);
2) Выборка данных.
Создать упорядоченные списки:
select SOTRUDNIKI.FIO, DETI.NAME
from SOTRUDNIKI, DETI
where SOTRUDNIKI.TAB_NOM=DETI.ID
and DETI.DATE_ROJD BETWEEN 3 AND 12;
select OBRAZOVANIE, COUNT(FIO)
from SOTRUDNIKI
group by OBRAZOVANIE
3 Работа с представлениями.
Создать представления:
create view OTD_SOTR
as
select SOTRUDNIKI.FIO, OTDELY.NAME
from SOTRUDNIKI, OTDELY
where SOTRUDNIKI.ID_OTDELA=OTDELY.ID;