Программная реализация БД
Pctincrease 0 freelists 1 freelist groups 1 buffer_pool default flash_cache default cell_flash_cache default). Pctincrease 0 freelists 1 freelist groups 1 buffer_pool default flash_cache default cell_flash_cache default). Pctincrease 0 freelists 1 freelist groups 1 buffer_pool default flash_cache default cell_flash_cache default). Select p. title, w.name from salon. worker w join salon. work_post… Читать ещё >
Программная реализация БД (реферат, курсовая, диплом, контрольная)
Теперь, когда получена корректная схема базы данных, можно приступать к реализации базы данных на её основе. После разработки самой базы данных, необходимо будет разработать пользовательский интерфейс, который обеспечит безопасный выборочный доступ пользователей к базе данных.
Реализация объектов СУБД Для того, чтобы реализовать объекты СУБД, необходимо описать их на структурированном языке запросов (SQL), используя интерфейс командной строки.
Реализация таблиц Рассмотрим таблицы, созданные в процессе реализации объектов СУБД:
CREATE TABLE «SALON» ." POST" .
(«POSTID» NUMBER NOT NULL ENABLE,.
" TITLE" VARCHAR2 (50 BYTE) NOT NULL ENABLE,.
" MONEY" NUMBER NOT NULL ENABLE,.
CONSTRAINT «POST_PK» PRIMARY KEY («POSTID»).
USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS.
STORAGE (INITIAL 65 536 NEXT 1 048 576 MINEXTENTS 1 MAXEXTENTS 2 147 483 645.
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE «USERS» ENABLE) SEGMENT CREATION IMMEDIATE
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING.
STORAGE (INITIAL 65 536 NEXT 1 048 576 MINEXTENTS 1 MAXEXTENTS 2 147 483 645.
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE «USERS» .
CREATE TABLE «SALON» ." CLIENT" .
(«CLIENTID» NUMBER NOT NULL ENABLE,.
" NAME" VARCHAR2 (50 BYTE) NOT NULL ENABLE,.
" BIRTH_DATE" DATE,
" SEX" VARCHAR2 (25 BYTE) NOT NULL ENABLE,.
" PHONE" VARCHAR2 (25 BYTE) NOT NULL ENABLE,.
" EMAIL" VARCHAR2 (25 BYTE) NOT NULL ENABLE,.
" CLIENTSINCE" DATE NOT NULL ENABLE,.
PRIMARY KEY («CLIENTID»).
USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS.
STORAGE (INITIAL 65 536 NEXT 1 048 576 MINEXTENTS 1 MAXEXTENTS 2 147 483 645.
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE «USERS» ENABLE) SEGMENT CREATION IMMEDIATE
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING.
STORAGE (INITIAL 65 536 NEXT 1 048 576 MINEXTENTS 1 MAXEXTENTS 2 147 483 645.
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE «USERS» .
CREATE TABLE «SALON» ." SERVICE" .
(«SERVICEID» NUMBER NOT NULL ENABLE,.
" TITLE" VARCHAR2 (50 BYTE) NOT NULL ENABLE,.
" TIME" VARCHAR2 (50 BYTE) NOT NULL ENABLE,.
" MATERIAL" VARCHAR2 (50 BYTE) NOT NULL ENABLE,.
" COUNT" VARCHAR2 (20 BYTE) NOT NULL ENABLE,.
" PRICE" NUMBER NOT NULL ENABLE,.
CONSTRAINT «SERVICE_PK» PRIMARY KEY («SERVICEID»).
USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS.
STORAGE (INITIAL 65 536 NEXT 1 048 576 MINEXTENTS 1 MAXEXTENTS 2 147 483 645.
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE «USERS» ENABLE) SEGMENT CREATION IMMEDIATE
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING.
STORAGE (INITIAL 65 536 NEXT 1 048 576 MINEXTENTS 1 MAXEXTENTS 2 147 483 645.
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE «USERS» .
CREATE TABLE «SALON» ." STATUS" .
(«VISITID» NUMBER NOT NULL ENABLE,.
" STATUS" VARCHAR2 (50 BYTE) NOT NULL ENABLE,.
CONSTRAINT «STATUS_PK» PRIMARY KEY («VISITID»).
USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS.
STORAGE (INITIAL 65 536 NEXT 1 048 576 MINEXTENTS 1 MAXEXTENTS 2 147 483 645.
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE «USERS» ENABLE,.
CONSTRAINT «STATUS_VISIT_FK1» FOREIGN KEY («VISITID»).
REFERENCES «SALON». «VISIT» («VISITID») ENABLE) SEGMENT CREATION IMMEDIATE
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING.
STORAGE (INITIAL 65 536 NEXT 1 048 576 MINEXTENTS 1 MAXEXTENTS 2 147 483 645.
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE «USERS» ;
CREATE TABLE «SALON» ." USERS" .
(«WORKID» NUMBER NOT NULL ENABLE,.
" LOGIN" VARCHAR2 (20 BYTE) NOT NULL ENABLE,.
" PSWRD" VARCHAR2 (20 BYTE) NOT NULL ENABLE,.
CONSTRAINT «USERS_PK» PRIMARY KEY («WORKID»).
USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS.
STORAGE (INITIAL 65 536 NEXT 1 048 576 MINEXTENTS 1 MAXEXTENTS 2 147 483 645.
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE «USERS» ENABLE,.
CONSTRAINT «USERS_WORKER_FK1» FOREIGN KEY («WORKID»).
REFERENCES «SALON». «WORKER» («WORKID») ENABLE) SEGMENT CREATION IMMEDIATE
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING.
STORAGE (INITIAL 65 536 NEXT 1 048 576 MINEXTENTS 1 MAXEXTENTS 2 147 483 645.
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE «USERS» ;
CREATE TABLE «SALON» ." VISIT" .
(«VISITID» NUMBER NOT NULL ENABLE,.
" CLIENTID" NUMBER NOT NULL ENABLE,.
" SERVICEID" NUMBER NOT NULL ENABLE,.
" WORKID" NUMBER NOT NULL ENABLE,.
" DATE" DATE NOT NULL ENABLE,.
CONSTRAINT «VISIT_PK» PRIMARY KEY («VISITID»).
USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS.
STORAGE (INITIAL 65 536 NEXT 1 048 576 MINEXTENTS 1 MAXEXTENTS 2 147 483 645.
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE «USERS» ENABLE,.
CONSTRAINT «VISIT_CLIENT_FK1» FOREIGN KEY («CLIENTID»).
REFERENCES «SALON». «CLIENT» («CLIENTID») ENABLE,.
CONSTRAINT «VISIT_SERVICE_FK1» FOREIGN KEY («SERVICEID»).
REFERENCES «SALON» ." SERVICE" («SERVICEID») ENABLE,.
CONSTRAINT «VISIT_WORKER_FK1» FOREIGN KEY («WORKID»).
REFERENCES «SALON» ." WORKER" («WORKID») ENABLE) SEGMENT CREATION IMMEDIATE
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING.
STORAGE (INITIAL 65 536 NEXT 1 048 576 MINEXTENTS 1 MAXEXTENTS 2 147 483 645.
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE «USERS» ;
CREATE TABLE «SALON» ." WORK_POST" .
(«WORKID» NUMBER NOT NULL ENABLE,.
" POSTID" NUMBER NOT NULL ENABLE,.
CONSTRAINT «WORK_POST_PK» PRIMARY KEY («WORKID», «POSTID»).
USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS.
STORAGE (INITIAL 65 536 NEXT 1 048 576 MINEXTENTS 1 MAXEXTENTS 2 147 483 645.
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE «USERS» ENABLE,.
CONSTRAINT «WORK_POST_WORKER_FK1» FOREIGN KEY («WORKID»).
REFERENCES «SALON» ." WORKER" («WORKID») ENABLE,.
CONSTRAINT «WORK_POST_POST_FK1» FOREIGN KEY («POSTID»).
REFERENCES «SALON» ." POST" («POSTID») ENABLE.
) SEGMENT CREATION IMMEDIATE
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING.
STORAGE (INITIAL 65 536 NEXT 1 048 576 MINEXTENTS 1 MAXEXTENTS 2 147 483 645.
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE «USERS» ;
CREATE TABLE «SALON» ." WORKER" .
(«WORKID» NUMBER NOT NULL ENABLE,.
" NAME" VARCHAR2 (100 BYTE) NOT NULL ENABLE,.
" PHONE" VARCHAR2 (25 BYTE) NOT NULL ENABLE,.
" ADDRESS" VARCHAR2 (50 BYTE) NOT NULL ENABLE,.
" WORKSINCE" DATE NOT NULL ENABLE,.
CONSTRAINT «WORKER_PK» PRIMARY KEY («WORKID»).
USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS.
STORAGE (INITIAL 65 536 NEXT 1 048 576 MINEXTENTS 1 MAXEXTENTS 2 147 483 645.
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE «USERS» ENABLE) SEGMENT CREATION IMMEDIATE
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING.
STORAGE (INITIAL 65 536 NEXT 1 048 576 MINEXTENTS 1 MAXEXTENTS 2 147 483 645.
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE «USERS» ;
Реализация представлений Для создания удобства обращения пользователей к БД — можно создать представления.
1. Отображает информацию обо всех визитах клиентов, а также сотрудниках, их обслуживающих.
CREATE VIEW SALON. VISITINFO AS select visitid, cl.name nameclient, s. title, w.name, v." DATE" from salon. visit v.
join salon. client cl on cl. clientid=v.clientid.
join salon. service s on s. serviceid=v.serviceid.
join salon. worker w on w. workid= v.workid.
order by visitid.
2. Отображает информацию о должностях сотрудников.
create view salon. postinfo as
select p. title, w.name from salon. worker w join salon. work_post wp on w. workid= wp.workid.
join salon. post p on wp. postid= p.postid.
3. Отображает клиентов и все их визиты.
create view salon. clientvisitinfo as.
select cl.name, s. title, v." DATE" from salon. visit v.
join salon. service s on s. serviceid=v.serviceid.
join salon. client cl on cl. clientid= v.clientid.