Buscar

criacao e manipulacao

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 4 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

DROP TABLE CONSULTA; 
DROP TABLE MEDICO;	
DROP TABLE ESPECIALIDADE;
DROP TABLE PACIENTE;
 
CREATE TABLE ESPECIALIDADE(
COD_ESP NUMBER(3) PRIMARY KEY,
NOME VARCHAR2(120) not null,
CONSTRAINT NOME_ESP_UQ UNIQUE (NOME)
);
 
CREATE TABLE MEDICO(
CRM NUMBER(8) PRIMARY KEY,
NOME VARCHAR2(120) NOT NULL,
SEXO CHAR(1) NOT NULL,
COD_ESP NUMBER(3),
CONSTRAINT SEXO_CK CHECK (SEXO IN ('F', 'M')),
CONSTRAINT ESP_MED_FK FOREIGN KEY (COD_ESP) REFERENCES ESPECIALIDADE (COD_ESP)
);
 
CREATE TABLE PACIENTE(
ID_PAC NUMBER(10) PRIMARY KEY,
NOME VARCHAR2(120) NOT NULL,
CPF NUMBER(14) NOT NULL,
SEXO CHAR(1) NOT NULL,
CONSTRAINT SEXO_PAC_CK CHECK (SEXO IN ('F', 'M')),
CONSTRAINT NOME_PAC_UQ UNIQUE (NOME),
CONSTRAINT CPF_PAC_UQ UNIQUE (CPF)
);
 
CREATE TABLE CONSULTA(
CRM NUMBER(8),
ID_PAC NUMBER(10),
DATA_HORA DATE,
DESCRICAO VARCHAR2(4000),
CONSTRAINT CONSULTA_PK PRIMARY KEY (CRM, ID_PAC, DATA_HORA),
CONSTRAINT CONS_MED_FK FOREIGN KEY (CRM) REFERENCES MEDICO (CRM),
CONSTRAINT CONS_PAC_FK FOREIGN KEY (ID_PAC) REFERENCES PACIENTE (ID_PAC)
);
INSERT INTO ESPECIALIDADE (COD_ESP,NOME_ESP) VALUES (2,'PEDIATRA');
INSERT INTO MEDICO (CRM,NOME_MED,SEXO,COD_ESP) VALUES(3334445,'MAK LOVE','M',2);
alter table paciente add(data_nasc date);
insert into paciente(cod_pac,cpf,nome_pac,sexo,data_nasc)values(1,99933322299,'craudio','M',to_date('23/05/1111 23:00:00','dd/mm/yyyy hh24:mi:ss'));
insert into paciente(cod_pac,cpf,nome_pac,sexo,data_nasc)values(2,33344455562,'Marivalda','F',sysdate);
create sequence seq_especialidade
start with 4
increment by 1
maxvalue 999
minvalue 1
nocache
nocycle;
insert into especialidade (cod_esp,nome_esp) values (seq_especialidade.nextval,'dentista');
create sequence seq_paciente
start with 6
increment by 1
maxvalue 999
minvalue 1
nocache
nocycle;
insert into paciente (cod_pac,nome_pac,cpf,sexo,data_nasc) values (seq_paciente.nextval,'Jaão fabiano',44455566677,'M',to_date('23/05/2012','dd/mm/yyyy'));
insert into consulta(COD_PAC,CRM,descricao,data_hora) values (1,4445551,'Gripe',to_date('23/04/2015 16:30:00','dd/mm/yyyy hh24:mi:ss'));
Join Método tradicional
SELECT first_name||' '||last_name "Nome Completo",department_name,city,state_province,country_name
from EMPLOYEES emp, DEPARTMENTS dep, LOCATIONS loc,COUNTRIES cou
where emp.DEPARTMENT_ID = dep.DEPARTMENT_id(+) 
and dep.LOCATION_ID= loc.LOCATION_ID(+) 
and loc.COUNTRY_ID= cou.COUNTRY_ID(+)
ORDER BY department_name,
"Nome Completo";
SELECT *FROM PACIENTE P,PACIENTE PA;
Metodo ansi
SELECT NOME_MED Medico,NOME_PAC Paciente,to_char(data_hora,'dd/mm/yyyy hh24:mi:ss')"Data da Consulta"
FROM medico med INNER JOIN consulta con
ON con.crm=med.crm
--and con.id=med.id
INNER JOIN
paciente pac
ON con.cod_pac=pac.COD_PAC;
SELECT NOME_MED Medico ,NOME_PAC Paciente ,to_char(data_hora,'dd/mm/yyyy hh24:mi:ss')"Data da Consulta"
FROM medico med FULL JOIN consulta con
ON con.crm=med.crm
FULL JOIN
paciente pac
ON con.cod_pac=pac.COD_PAC;
SELECT NOME_MED "Medico,NOME_PAC Paciente,to_char(data_hora,'dd/mm/yyyy hh24:mi:ss')"Data da Consulta"
FROM medico med LEFT JOIN consulta con
ON con.crm=med.crm
LEFT JOIN
paciente pac
ON con.cod_pac=pac.COD_PAC;
SELECT NOME_MED Medico,NOME_PAC Paciente,to_char(data_hora,'dd/mm/yyyy hh24:mi:ss')"Data da Consulta"
FROM medico med FULL JOIN consulta con
ON con.crm=med.crm
FULL JOIN
paciente pac
ON con.cod_pac=pac.COD_PAC;
SELECT NOME_MED Medico ,NOME_PAC Paciente,to_char(data_hora,'dd/mm/yyyy hh24:mi:ss')"Data da Consulta"
FROM medico med LEFT JOIN consulta con
ON con.crm=med.crm
LEFT JOIN
paciente pac
ON con.cod_pac=pac.COD_PAC;
SELECT NOME_PAC "Nome Paciente",sexo,to_char(data_hora,'dd/mm/yyyy hh24:mi:ss')"Data da Consulta"
FROM consulta con INNER JOIN paciente pac
ON con.cod_pac=pac.COD_PAC;
SELECT NOME_PAC "Nome Paciente",sexo,to_char(data_hora,'dd/mm/yyyy hh24:mi:ss')"Data da Consulta"
FROM consulta con RIGHT JOIN paciente pac
ON con.cod_pac=pac.COD_PAC;
SELECT *FROM medico CROSS JOIN consulta;

Outros materiais