GTTeamKiller エアリス | Bonjour,
dans le cadre d'un exercice, on doit créer une petite base de données sous sql server pour une compagnie aérienne fictive ...
On a commencé les bases de données lundi matin, donc forcément en 4 jours on est pas non plus à un niveau très élevé ...
En gros, la création de la base, de ses tables se passe bien, mais au remplissage avec le script que les formateurs nous ont filé je récupère des erreurs de type : Code :
- Serveur : Msg 547, Niveau 16, État 1, Ligne 1
- Conflit entre l'instruction INSERT et la contrainte COLUMN FOREIGN KEY 'FK__AFFECTATI__NumVo__0DAF0CB0'. Le conflit est survenu dans la base de données 'AirCrash', table 'VOL', column 'NumVol'.
|
Pourtant, quand je vérifie dans le entreprise manager, le type de données attendu correspond bien à ce qui est fourni, du coup je ne comprends pas l'erreur ....
Voici mon script de création de la base de données, avec en première partie mon script a proprement parler, et ensuite a partir des "delete" la partie filée par les formateurs pour éviter d'avoir à saisir les données :
Code :
- --création de la base de données AirCrash
- create database AirCrash
- go
- -- sélection de la bonne base de données
- USE AirCrash
- go
- -- création des types de données utilisateur
- exec sp_addtype Typedate, 'datetime', 'not null';
- go
- exec sp_addtype TypeHoraire, 'smalldatetime', 'not null';
- go
- exec sp_addtype TypeNom, 'varchar(50)', 'not null';
- go
- exec sp_addtype TypePrenom, 'varchar(30)', 'null';
- go
- exec sp_addtype TypeAvion, 'varchar(20)', 'not null';
- go
- exec sp_addtype TypeIdConstructeur, 'smallint', 'not null';
- go
- exec sp_addtype TypeIdAeroport, 'char(3)', 'not null';
- go
- exec sp_addtype TypeNumVol, 'char(5)', 'not null';
- go
- exec sp_addtype TypeVille, 'varchar(50)', 'null';
- go
- --création des tables de AirCrash
- CREATE TABLE CONSTRUCTEUR
- (
- IdConstructeur smallint primary key clustered,
- NomConstructeur varchar
- )
- go
- CREATE TABLE TYPE
- (
- TypeAvion varchar primary key
- check (TypeAvion like '[a-z]%'),
- Capacite smallint not null
- default (100)
- check (Capacite > 50 and capacite < 400),
- IdConstructeur smallint null
- references CONSTRUCTEUR(IdConstructeur)
- )
- go
- CREATE TABLE AEROPORT
- (
- IdAeroport char(3) primary key
- check (IdAeroport like '[A-Z][A-Z][A-Z]'),
- NomAeroport varchar not null,
- NomVilleDesservie varchar null
- )
- go
- CREATE TABLE AVION
- (
- NumAvion smallint primary key clustered
- check (numavion > 100),
- TypeAvion varchar null
- references TYPE(TypeAvion),
- BaseAeroport char(3) null
- references AEROPORT(IdAeroport)
- )
- go
- CREATE TABLE VOL
- (
- NumVol char(5) primary key,
- check ( NumVol like 'IT[0-9][0-9][0-9]'),
- AeroportDept char(3) not null
- references AEROPORT(IdAeroport),
- Hdepart datetime not null,
- AeroportArr char(3) not null
- references AEROPORT(IdAeroport),
- Harrivee datetime not null
- )
- go
- CREATE TABLE PILOTE
- (
- IdPilote smallint primary key clustered,
- NomPilote varchar not null,
- PrenomPilote varchar not null
- )
- go
- CREATE TABLE AFFECTATION
- (
- NumVol char(5) not null
- references VOL(NumVol),
- DateVol datetime not null,
- NumAvion smallint not null
- references AVION(NumAvion),
- IdPilote smallint null
- references PILOTE(IdPilote)
- primary key (Numvol, DateVol)
- )
- go
- DELETE AFFECTATION
- Go
- DELETE AVION
- go
- DELETE VOL
- go
- DELETE TYPE
- go
- DELETE PILOTE
- go
- DELETE CONSTRUCTEUR
- go
- DELETE AEROPORT
- Go
- INSERT PILOTE
- VALUES ('GAINSBOURG', 'Serge')
- INSERT PILOTE
- VALUES ('FERRAT', 'Jean')
- INSERT PILOTE
- VALUES ('NOUGARO', 'Claude')
- INSERT PILOTE
- VALUES ('SCHUMMAN', 'Robert')
- INSERT PILOTE
- VALUES ('STROGOFF', 'Michel')
- INSERT PILOTE
- VALUES ('SORREL', 'Lucien')
- INSERT PILOTE
- VALUES ('TAVERNIER', 'Bertrand')
- INSERT PILOTE
- VALUES ('FAYOLLE', 'Marc')
- INSERT PILOTE
- VALUES ('LECU', 'Régis')
- go
- INSERT CONSTRUCTEUR
- VALUES ('Aérospatiale')
- INSERT CONSTRUCTEUR
- VALUES ('Boeing')
- INSERT CONSTRUCTEUR
- VALUES ('Cessna')
- INSERT CONSTRUCTEUR
- VALUES ('Douglas')
- INSERT AEROPORT
- VALUES ('BAS', 'Poretta', 'Bastia')
- INSERT AEROPORT
- VALUES ('BRI', 'Brive', 'Brive')
- INSERT AEROPORT
- VALUES ('GRE', 'Saint Geoir', 'Grenoble')
- INSERT AEROPORT
- VALUES ('LYS', 'Saint exupéry', 'Lyon')
- INSERT AEROPORT
- VALUES ('NAN', 'Saint Herblain', 'Nantes')
- INSERT AEROPORT
- VALUES ('NIC', 'Nice cote d azur', 'Nice')
- INSERT AEROPORT
- VALUES ('CDG', 'Roissy', 'Paris')
- INSERT AEROPORT
- VALUES ('BLA', 'Blagnac', 'Toulouse')
- INSERT AEROPORT
- VALUES ('ORL', 'Orly', 'Paris')
- go
- INSERT VOL
- VALUES ('IT100', 'NIC', '07:00', 'CDG', '09:00')
- INSERT VOL
- VALUES('IT101', 'ORL', '11:00', 'BLA', '12:00')
- INSERT VOL
- VALUES('IT102', 'CDG', '12:00', 'NIC', '14:00')
- INSERT VOL
- VALUES('IT103', 'GRE', '09:00:00', 'BLA', '11:00:00')
- INSERT VOL
- VALUES('IT104', 'BLA', '17:00:00', 'GRE', '19:00:00')
- INSERT VOL
- VALUES('IT105', 'LYS', '06:00:00', 'ORL', '07:00:00')
- INSERT VOL
- VALUES('IT106', 'BAS', '10:00:00', 'ORL', '13:00:00')
- INSERT VOL
- VALUES('IT107', 'NIC', '07:00:00', 'BRI', '08:00:00')
- INSERT VOL
- VALUES('IT108', 'BRI', '19:00:00', 'ORL', '20:00:00')
- INSERT VOL
- VALUES('IT109', 'NIC', '18:00:00', 'ORL', '19:00:00')
- INSERT VOL
- VALUES('IT110', 'ORL', '15:00:00', 'NIC', '16:00:00')
- INSERT VOL
- VALUES('IT111', 'NIC', '17:00:00', 'NAN', '19:00:00')
- go
- INSERT TYPE
- VALUES('A320', 300, 1)
- INSERT TYPE
- VALUES('B707', 250, 2)
- INSERT TYPE
- VALUES('DC10', 200, 4)
- INSERT TYPE
- VALUES('B747', 400, 2)
- INSERT TYPE
- VALUES('ATR42', 50, 1)
- INSERT TYPE
- VALUES('B727', 300, 2)
- INSERT TYPE
- VALUES('A340', 350, 1)
- go
- INSERT AVION
- VALUES ('A320', 'NIC')
- INSERT AVION
- VALUES ('B707', 'CDG')
- INSERT AVION
- VALUES ('A320', 'BLA')
- INSERT AVION
- VALUES ('DC10', 'BLA')
- INSERT AVION
- VALUES ('B747', 'ORL')
- INSERT AVION
- VALUES ('A320', 'GRE')
- INSERT AVION
- VALUES ('ATR42', 'CDG')
- INSERT AVION
- VALUES ('B727', 'LYS')
- INSERT AVION
- VALUES ('B727', 'NAN')
- INSERT AVION
- VALUES ('A340', 'BAS')
- go
- INSERT AFFECTATION
- VALUES ('IT100', '06/04/01',100 ,1 )
- INSERT AFFECTATION
- VALUES ('IT101', '06/04/01',100 , 2)
- INSERT AFFECTATION
- VALUES ('IT102', '06/04/01',101 ,1 )
- INSERT AFFECTATION
- VALUES ('IT103', '06/04/01',105 ,3 )
- INSERT AFFECTATION
- VALUES ('IT104', '06/04/01',105 , 3)
- INSERT AFFECTATION
- VALUES ('IT106', '06/04/01',109 , 8)
- INSERT AFFECTATION
- VALUES ('IT107', '06/04/01',106 ,9 )
- INSERT AFFECTATION
- VALUES ('IT108', '06/04/01',106, 9 )
- INSERT AFFECTATION
- VALUES ('IT109', '06/04/01', 107, 7 )
- INSERT AFFECTATION
- VALUES ('IT110', '06/04/01', 102, 2 )
- INSERT AFFECTATION
- VALUES ('IT111', '06/04/01', 101, 4 )
- INSERT AFFECTATION
- VALUES ('IT105', '06/04/01', 107, 7 )
- INSERT AFFECTATION
- VALUES ('IT100', '07/04/01',101 , 2 )
- INSERT AFFECTATION
- VALUES ('IT101', '07/04/01',103 , 4 )
- INSERT AFFECTATION
- VALUES ('IT102', '07/04/01',102 , 3 )
- INSERT AFFECTATION
- VALUES ('IT103', '07/04/01',104 , 2 )
- INSERT AFFECTATION
- VALUES ('IT104', '07/04/01',107 , 8 )
- INSERT AFFECTATION
- VALUES ('IT105', '07/04/01',106 , 7 )
- INSERT AFFECTATION
- VALUES ('IT106', '07/04/01',104 , 5 )
- INSERT AFFECTATION
- VALUES ('IT107', '07/04/01',103 , 8 )
- INSERT AFFECTATION
- VALUES ('IT108', '07/04/01',106 , 5 )
- INSERT AFFECTATION
- VALUES ('IT109', '07/04/01',105 , 1 )
- INSERT AFFECTATION
- VALUES ('IT110', '07/04/01',104 , 3 )
- INSERT AFFECTATION
- VALUES ('IT111', '07/04/01',100 , 8 )
- go
|
merci |