OVH Cloud OVH Cloud

Besoin d'un conseil

4 réponses
Avatar
Perceval
Bonjour,=20

Je suis en train de mettre en place un sust=E8me de gestion=20
d'appels d'offres.
Un appel d'offres est caract=E9ris=E9 par un type.
Le type peut prendre plusoieurs valuers, dont voici qq=20
exemples :=20
- appel d'offres ouvert
- appel d'offres restreint
- concours ouvert
- concours restreint
- etc

Je voudrais savoir comment est-ce que je pourrais faire=20
pour mettre =E7a en place facilement.
Je ne peux pas mettre un champs de type string o=F9 je=20
mettrai l'=E9nonc=E9 ? Il y a surement une mani=E8re plus=20
propre de le mettre en place.
Sinon, je pensais aussi qu'il serait possible de faire=20
une table type, avec pour champs id et nom, et dans la=20
table appels d'offres, je pourrais stocker en cl=E9=20
=E9trang=E8re l'id du type ? C'est peut-=EAtre plus facile=20
comme =E7a d'un point de vue maintenance , non ?

Est-ce quye quelqu'un pourrait me donner son avis ?

Merci d'avance.

Perceval

4 réponses

Avatar
Bonjour,

ta deuxième possibilité est la meilleure celle de créer une table stockant
id et nom puis de créer la référence par une clef étrangère sur l'id en
effet cela te permettra de modifier la liste des valeurs possible sans
devoir retourcher la totalité du code (disons d'un point de vue maintenance)

Sebastien


"Perceval" a écrit dans le message de
news:1be9c01c451e2$66ed4120$
Bonjour,

Je suis en train de mettre en place un sustème de gestion
d'appels d'offres.
Un appel d'offres est caractérisé par un type.
Le type peut prendre plusoieurs valuers, dont voici qq
exemples :
- appel d'offres ouvert
- appel d'offres restreint
- concours ouvert
- concours restreint
- etc

Je voudrais savoir comment est-ce que je pourrais faire
pour mettre ça en place facilement.
Je ne peux pas mettre un champs de type string où je
mettrai l'énoncé ? Il y a surement une manière plus
propre de le mettre en place.
Sinon, je pensais aussi qu'il serait possible de faire
une table type, avec pour champs id et nom, et dans la
table appels d'offres, je pourrais stocker en clé
étrangère l'id du type ? C'est peut-être plus facile
comme ça d'un point de vue maintenance , non ?

Est-ce quye quelqu'un pourrait me donner son avis ?

Merci d'avance.

Perceval
Avatar
Fred BROUARD
oui, il faut créer une table de référence et la lier par intégrité référentielle.

Exemple :

CREATE TABLE TR_TYPE_APPEL_OFFRE_TAO
(TAO_ID INT NOT NULL IDENTITY PRIMARY KEY,
TAO_CODE CHAR(8) NOT NULL UNIQUE,
TAO_LIBELLE VARCHAR(64) NOT NULL)

CREATE TABLE T_APPEL_OFFRE_APO
(APO_ID INT NOT NULL IDENTITY PRIMARY KEY,
TAO_ID INT NOT NULL FOREIGN KEY REFERENCES TR_TYPE_APPEL_OFFRE_TAO (TAO_ID),
...)

A lire :
Sur l'intégrité référentielle
http://sqlpro.developpez.com/SQL_AZ_7b.html#SCHEMA73
Sur la normalisation des noms d'objets :
http://sqlpro.developpez.com/Methode/SGBDR_nom.html

A +

--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************

Perceval a écrit:
Bonjour,

Je suis en train de mettre en place un sustème de gestion
d'appels d'offres.
Un appel d'offres est caractérisé par un type.
Le type peut prendre plusoieurs valuers, dont voici qq
exemples :
- appel d'offres ouvert
- appel d'offres restreint
- concours ouvert
- concours restreint
- etc

Je voudrais savoir comment est-ce que je pourrais faire
pour mettre ça en place facilement.
Je ne peux pas mettre un champs de type string où je
mettrai l'énoncé ? Il y a surement une manière plus
propre de le mettre en place.
Sinon, je pensais aussi qu'il serait possible de faire
une table type, avec pour champs id et nom, et dans la
table appels d'offres, je pourrais stocker en clé
étrangère l'id du type ? C'est peut-être plus facile
comme ça d'un point de vue maintenance , non ?

Est-ce quye quelqu'un pourrait me donner son avis ?

Merci d'avance.

Perceval


Avatar
Perceval
Merci à tous les deux pour vos conseils.
Bonne journée.

-----Message d'origine-----
oui, il faut créer une table de référence et la lier par


intégrité référentielle.

Exemple :

CREATE TABLE TR_TYPE_APPEL_OFFRE_TAO
(TAO_ID INT NOT NULL IDENTITY PRIMARY KEY,
TAO_CODE CHAR(8) NOT NULL UNIQUE,
TAO_LIBELLE VARCHAR(64) NOT NULL)

CREATE TABLE T_APPEL_OFFRE_APO
(APO_ID INT NOT NULL IDENTITY PRIMARY KEY,
TAO_ID INT NOT NULL FOREIGN KEY REFERENCES


TR_TYPE_APPEL_OFFRE_TAO (TAO_ID),
...)

A lire :
Sur l'intégrité référentielle
http://sqlpro.developpez.com/SQL_AZ_7b.html#SCHEMA73
Sur la normalisation des noms d'objets :
http://sqlpro.developpez.com/Methode/SGBDR_nom.html

A +

--
Frédéric BROUARD, MVP SQL Server. Expert SQL /


spécialiste Delphi, web
Livre SQL - col. Référence :


http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros :


http://sqlpro.developpez.com
************************ www.datasapiens.com


*************************

Perceval a écrit:
Bonjour,

Je suis en train de mettre en place un sustème de




gestion
d'appels d'offres.
Un appel d'offres est caractérisé par un type.
Le type peut prendre plusoieurs valuers, dont voici qq
exemples :
- appel d'offres ouvert
- appel d'offres restreint
- concours ouvert
- concours restreint
- etc

Je voudrais savoir comment est-ce que je pourrais




faire
pour mettre ça en place facilement.
Je ne peux pas mettre un champs de type string où je
mettrai l'énoncé ? Il y a surement une manière plus
propre de le mettre en place.
Sinon, je pensais aussi qu'il serait possible de faire
une table type, avec pour champs id et nom, et dans la
table appels d'offres, je pourrais stocker en clé
étrangère l'id du type ? C'est peut-être plus facile
comme ça d'un point de vue maintenance , non ?

Est-ce quye quelqu'un pourrait me donner son avis ?

Merci d'avance.

Perceval



.



Avatar
Perceval
Merci à tous les deux pour vos conseils.
Bonne journée.

-----Message d'origine-----
oui, il faut créer une table de référence et la lier par


intégrité référentielle.

Exemple :

CREATE TABLE TR_TYPE_APPEL_OFFRE_TAO
(TAO_ID INT NOT NULL IDENTITY PRIMARY KEY,
TAO_CODE CHAR(8) NOT NULL UNIQUE,
TAO_LIBELLE VARCHAR(64) NOT NULL)

CREATE TABLE T_APPEL_OFFRE_APO
(APO_ID INT NOT NULL IDENTITY PRIMARY KEY,
TAO_ID INT NOT NULL FOREIGN KEY REFERENCES


TR_TYPE_APPEL_OFFRE_TAO (TAO_ID),
...)

A lire :
Sur l'intégrité référentielle
http://sqlpro.developpez.com/SQL_AZ_7b.html#SCHEMA73
Sur la normalisation des noms d'objets :
http://sqlpro.developpez.com/Methode/SGBDR_nom.html

A +

--
Frédéric BROUARD, MVP SQL Server. Expert SQL /


spécialiste Delphi, web
Livre SQL - col. Référence :


http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros :


http://sqlpro.developpez.com
************************ www.datasapiens.com


*************************

Perceval a écrit:
Bonjour,

Je suis en train de mettre en place un sustème de




gestion
d'appels d'offres.
Un appel d'offres est caractérisé par un type.
Le type peut prendre plusoieurs valuers, dont voici qq
exemples :
- appel d'offres ouvert
- appel d'offres restreint
- concours ouvert
- concours restreint
- etc

Je voudrais savoir comment est-ce que je pourrais




faire
pour mettre ça en place facilement.
Je ne peux pas mettre un champs de type string où je
mettrai l'énoncé ? Il y a surement une manière plus
propre de le mettre en place.
Sinon, je pensais aussi qu'il serait possible de faire
une table type, avec pour champs id et nom, et dans la
table appels d'offres, je pourrais stocker en clé
étrangère l'id du type ? C'est peut-être plus facile
comme ça d'un point de vue maintenance , non ?

Est-ce quye quelqu'un pourrait me donner son avis ?

Merci d'avance.

Perceval



.