Salut!
je dois créer une base de donnée qui contient les tables suivantes:
Opération(NumOperation,TypeOperation,MantantOperation,DateOperation,NumCompte#)
Compte Bancaire(NumCompte,SoldeCompte,TypeCompte,NumClient#)
Client(NumClient,NomClient,PrénomClient,AdresseClient,TélClient)
avec les contraintes suivantes:
• Les opérations sur un compte bancaire sont de 2 types : une opération de retrait ou une opération de dépôt (TypeOperation=˝D˝ si le client a déposé de l’argent sur son compte et TypeOperation=˝R˝ si le client a retiré de l’argent de son compte)
• Un client ne peut avoir qu’un seul compte courant (TypeCompte=˝CC˝) et qu’un seul compte sur carnet (TypeCompte=˝CN˝)
• Le numéro d’opération est automatique (auto- incrémenté)
• La date de l’opération prend par défaut la date du jour.
J'ai créer la base graphiquement,et voici le code de création des tables et les contraintes(je suis un débutants) :
Je reçois un message d'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49 --drop table Opération --drop table [Compte Bancaire] --drop table Client create table Opération (NumOperation int not null identity ,TypeOperation char ,MantantOperation money ,DateOperation datetime default GetDate() ,NumCompte int) create table [Compte Bancaire] (NumCompte int not null ,SoldeCompte money ,TypeCompte nvarchar(2) not null ,NumClient int) create table Client (NumClient int not null ,CINClient nvarchar(10) ,NomClient nvarchar(15) ,PrénomClient nvarchar(15) ,AdresseClient nvarchar(25) ,TélClient nvarchar(15)) alter table Opération add constraint pk_NumOp primary key(NumOperation) alter table Client add constraint Pk_NumCl primary key (NumClient) alter table [Compte Bancaire] add constraint Pk_NumCo primary key(NumCompte,TypeCompte) alter table[Compte Bancaire] add constraint Uk_NumCl_TypeCo unique(NumClient,TypeCompte) alter table Opération add constraint FK_NumCo foreign key(NumCompte) references [Compte Bancaire](NumCompte) alter table [Compte Bancaire] add constraint FK_NumCl foreign key(NumClient) references Client(NumClient) alter table Opération add constraint ChkTyOp check (TypeOperation='D' or TypeOperation='R' )
Selon ce que j'ai compris je ne peux pas créer une clé etrangere sur la colone NumCompte de la table Operation en se referant avec la clé primaire FK_NumCo.Msg 1776, Level 16, State 0, Line 40
There are no primary or candidate keys in the referenced table 'Compte Bancaire' that match the referencing column list in the foreign key 'FK_NumCo'.
Msg 1750, Level 16, State 0, Line 40
Could not create constraint. See previous errors.
Y a-t-il quelqu'un qui puisse me corriger les erreurs que j'ai ici svp, et merci d'avance !
Partager