Comment créer les vues?
Derby
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
Voici le script de ma base de données, mais j'ai des problèmes de création de vue, car n'ayant pas beaucoup de notion:
Voici le script:
--creation des tables
create table Service
(
num_serv varchar2(15) not null,
libelle_serv varchar2(100),
CONSTRAINT pk_num_ser primary key(num_serv));
create table Travailleur
(
num_trav varchar2(15) not null,
nom_trav varchar2(20) not null,
statu_trav varchar2(15) not null,
fonct_trav varchar2(20) not null,
num_serv varchar2(15) not null,
CONSTRAINT pk_num primary key(num_trav),
CONSTRAINT fk_serv foreign key(num_serv) references Service(num_serv));
create table Absence
(
num_abs varchar(15) not null,
date_abs Date,
duree_abs varchar2(20) not null,
motif_abs varchar2(40) not null,
num_trav varchar2(15) not null,
CONSTRAINT pk_nume primary key(num_trav),
CONSTRAINT fk_num foreign key(num_trav) references Travailleur(num_trav));
create table conges
(num_cong varchar2(15) not null,
dat_dep_cong Date,
dat_ret_cong Date ,
nbre_jour_cong Varchar2(05) not null,
typ_cong Varchar2(50) not null,
demd_cong Varchar2(40) not null,
num_trav Varchar2(15) not null,
CONSTRAINT pk_num_cong primary key(num_cong),
CONSTRAINT fk_num_tra foreign key(num_trav) references Travailleur(num_trav));
create table Pointage
(
num_point varchar2(15) not null,
period_point Date,
heur_arriv TimeStamp,
heur_ret TimeStamp,
num_trav varchar2(15) not null,
CONSTRAINT pk_num_point primary key(num_point),
CONSTRAINT fk_num_tr foreign key(num_trav) references Travailleur(num_trav));
create table Permission
(
num_permis varchar2(15) not null,
date_permis Date,
demd_permis varchar2(50),
num_trav varchar2(15) not null,
CONSTRAINT pk_num_permis primary key(num_permis),
CONSTRAINT fk_num_t foreign key(num_trav) references Travailleur(num_trav));
create table Modepasse
(
login varchar2(15) not null,
pass varchar2(15) not null,
num_trav varchar2(15) not null,
CONSTRAINT pk_login primary key(login,pass),
CONSTRAINT fk_num_tv foreign key(num_trav) references Travailleur(num_trav));
create table Sortie
(
num_sort varchar2(15) not null,
heur_sort TimeStamp,
duree_sort varchar2(20),
motif_sort varchar2(100) not null,
num_trav varchar2(15) not null,
CONSTRAINT pk_num_sort primary key(num_sort),
CONSTRAINT fk_num_tvr foreign key(num_trav) references Travailleur(num_trav));
S'il vous plait, veillez créer toutes les vues possibles conncernant ma bd.
Merci pour votre attention
Voici le script de ma base de données, mais j'ai des problèmes de création de vue, car n'ayant pas beaucoup de notion:
Voici le script:
--creation des tables
create table Service
(
num_serv varchar2(15) not null,
libelle_serv varchar2(100),
CONSTRAINT pk_num_ser primary key(num_serv));
create table Travailleur
(
num_trav varchar2(15) not null,
nom_trav varchar2(20) not null,
statu_trav varchar2(15) not null,
fonct_trav varchar2(20) not null,
num_serv varchar2(15) not null,
CONSTRAINT pk_num primary key(num_trav),
CONSTRAINT fk_serv foreign key(num_serv) references Service(num_serv));
create table Absence
(
num_abs varchar(15) not null,
date_abs Date,
duree_abs varchar2(20) not null,
motif_abs varchar2(40) not null,
num_trav varchar2(15) not null,
CONSTRAINT pk_nume primary key(num_trav),
CONSTRAINT fk_num foreign key(num_trav) references Travailleur(num_trav));
create table conges
(num_cong varchar2(15) not null,
dat_dep_cong Date,
dat_ret_cong Date ,
nbre_jour_cong Varchar2(05) not null,
typ_cong Varchar2(50) not null,
demd_cong Varchar2(40) not null,
num_trav Varchar2(15) not null,
CONSTRAINT pk_num_cong primary key(num_cong),
CONSTRAINT fk_num_tra foreign key(num_trav) references Travailleur(num_trav));
create table Pointage
(
num_point varchar2(15) not null,
period_point Date,
heur_arriv TimeStamp,
heur_ret TimeStamp,
num_trav varchar2(15) not null,
CONSTRAINT pk_num_point primary key(num_point),
CONSTRAINT fk_num_tr foreign key(num_trav) references Travailleur(num_trav));
create table Permission
(
num_permis varchar2(15) not null,
date_permis Date,
demd_permis varchar2(50),
num_trav varchar2(15) not null,
CONSTRAINT pk_num_permis primary key(num_permis),
CONSTRAINT fk_num_t foreign key(num_trav) references Travailleur(num_trav));
create table Modepasse
(
login varchar2(15) not null,
pass varchar2(15) not null,
num_trav varchar2(15) not null,
CONSTRAINT pk_login primary key(login,pass),
CONSTRAINT fk_num_tv foreign key(num_trav) references Travailleur(num_trav));
create table Sortie
(
num_sort varchar2(15) not null,
heur_sort TimeStamp,
duree_sort varchar2(20),
motif_sort varchar2(100) not null,
num_trav varchar2(15) not null,
CONSTRAINT pk_num_sort primary key(num_sort),
CONSTRAINT fk_num_tvr foreign key(num_trav) references Travailleur(num_trav));
S'il vous plait, veillez créer toutes les vues possibles conncernant ma bd.
Merci pour votre attention
A voir également:
- Comment créer les vues?
- Comment créer un groupe whatsapp - Guide
- Créer un compte google - Guide
- Comment créer un compte gmail - Guide
- Créer un lien pour partager des photos - Guide
- Comment creer un organigramme - Guide
1 réponse
Bonjour,
Créer une vue revient presque à faire une requête SQL
donc vous faites la requête qui va va bien avec une jointure, sous requête et autres et ensuite à l'aide de cette requête vous faites
create view toto as (select.... )
https://www.commentcamarche.net/contents/1071-sql-creation-de-vues
Dans votre exemple on pourrait créer la vue services_travailleur ainsi
create view ServiceTravailleur (nom, service) as
select t.nom_trav, s.libelle_serv
from
Travailleur as t
inner join Service as s on t.num_serv = s.num_serv
Cordialement
Créer une vue revient presque à faire une requête SQL
donc vous faites la requête qui va va bien avec une jointure, sous requête et autres et ensuite à l'aide de cette requête vous faites
create view toto as (select.... )
https://www.commentcamarche.net/contents/1071-sql-creation-de-vues
Dans votre exemple on pourrait créer la vue services_travailleur ainsi
create view ServiceTravailleur (nom, service) as
select t.nom_trav, s.libelle_serv
from
Travailleur as t
inner join Service as s on t.num_serv = s.num_serv
Cordialement