Vehicule(ID :int auto ; Libelle : varchar(20)....)
Location(ID :int auto ; Libelle : varchar(20)....)
Devis(ID :int auto ; ID_Article int....)
Le champ ID_Article est une cle etrangere sur vehicule et location
Si je supprime un devis il doit supprimer les vehicules ou Location qui
ont un ID = à ID_Article.
Mais comment faire pour qu'il ne supprime que ceux qui ont un lien avec
lui. je m'explique
Vehicule
1 Renault5
2 R21
......
Location
1 Location du X au Y
2 Location du Z au U
......
je cre un devis et ajoute l'article Vehicule avec l'ID 1 du coup je me
retrouve avec
Devis 1 1
Je supprime le devis, comment va t'il savoir qu'il faut soit supprimer
la location soit le vehicule car ils ont le meme ID Auto.
La solution serait de pouvoir dire a SQL de creer un ID auto suivant
plusieurs tables. Est ce possible ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Fred BROUARD
JO a écrit :
bonjour, voila j'ai des tables :
Vehicule(ID :int auto ; Libelle : varchar(20)....) Location(ID :int auto ; Libelle : varchar(20)....) Devis(ID :int auto ; ID_Article int....)
Le champ ID_Article est une cle etrangere sur vehicule et location Si je supprime un devis il doit supprimer les vehicules ou Location qui ont un ID = à ID_Article.
Mais comment faire pour qu'il ne supprime que ceux qui ont un lien avec lui. je m'explique
Vehicule 1 Renault5 2 R21 ......
Location 1 Location du X au Y 2 Location du Z au U ......
je cre un devis et ajoute l'article Vehicule avec l'ID 1 du coup je me retrouve avec Devis 1 1
Je supprime le devis, comment va t'il savoir qu'il faut soit supprimer la location soit le vehicule car ils ont le meme ID Auto.
La solution serait de pouvoir dire a SQL de creer un ID auto suivant plusieurs tables. Est ce possible ?
merci
Utilisez une procédure stockée auquel vous passez une n° de devis et qui fait 2 requêtes : 1) DELETE FROM MatableFille WHERE DEVIS_ID = 1 2) DELETE FROM Devis WHERE DEVIS_ID = 1
A +
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
JO a écrit :
bonjour,
voila j'ai des tables :
Vehicule(ID :int auto ; Libelle : varchar(20)....)
Location(ID :int auto ; Libelle : varchar(20)....)
Devis(ID :int auto ; ID_Article int....)
Le champ ID_Article est une cle etrangere sur vehicule et location
Si je supprime un devis il doit supprimer les vehicules ou Location qui
ont un ID = à ID_Article.
Mais comment faire pour qu'il ne supprime que ceux qui ont un lien avec
lui. je m'explique
Vehicule
1 Renault5
2 R21
......
Location
1 Location du X au Y
2 Location du Z au U
......
je cre un devis et ajoute l'article Vehicule avec l'ID 1 du coup je me
retrouve avec
Devis 1 1
Je supprime le devis, comment va t'il savoir qu'il faut soit supprimer
la location soit le vehicule car ils ont le meme ID Auto.
La solution serait de pouvoir dire a SQL de creer un ID auto suivant
plusieurs tables. Est ce possible ?
merci
Utilisez une procédure stockée auquel vous passez une n° de devis et qui
fait 2 requêtes :
1) DELETE FROM MatableFille WHERE DEVIS_ID = 1
2) DELETE FROM Devis WHERE DEVIS_ID = 1
A +
--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
********************* http://www.datasapiens.com ***********************
Vehicule(ID :int auto ; Libelle : varchar(20)....) Location(ID :int auto ; Libelle : varchar(20)....) Devis(ID :int auto ; ID_Article int....)
Le champ ID_Article est une cle etrangere sur vehicule et location Si je supprime un devis il doit supprimer les vehicules ou Location qui ont un ID = à ID_Article.
Mais comment faire pour qu'il ne supprime que ceux qui ont un lien avec lui. je m'explique
Vehicule 1 Renault5 2 R21 ......
Location 1 Location du X au Y 2 Location du Z au U ......
je cre un devis et ajoute l'article Vehicule avec l'ID 1 du coup je me retrouve avec Devis 1 1
Je supprime le devis, comment va t'il savoir qu'il faut soit supprimer la location soit le vehicule car ils ont le meme ID Auto.
La solution serait de pouvoir dire a SQL de creer un ID auto suivant plusieurs tables. Est ce possible ?
merci
Utilisez une procédure stockée auquel vous passez une n° de devis et qui fait 2 requêtes : 1) DELETE FROM MatableFille WHERE DEVIS_ID = 1 2) DELETE FROM Devis WHERE DEVIS_ID = 1
A +
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
Gilles LE BARBIER
Si je comprend bien devis est utilisé pour deux tables avec le meme ID
il y a pas un problème de conception tu as bien une info qui t'indique que c'est un devis voiture ou location
Gilles
Si je comprend bien devis est utilisé pour deux tables avec le meme ID
il y a pas un problème de conception tu as bien une info qui t'indique que
c'est un devis voiture ou location