Créer un trigger pour faire un auto incrément avec clé primaire relative
Bonjour, je souhaiterai créer un trigger afin de calculer l'identifiant à la façon d'un auto increment.
POur etre plus clair voici la structure de ma table :
client(id, #idSociete, nom, ....)
Et ce que je voudrai faire c'est par exemple :
- Que la société (idSociete) 1 ait les clients qui se numérotent à partir de 1.
- Mais aussi que la société 2 ait ses client qui se numérotent à partir de 1 aussi.
En tableau cela donnerai :
| IdSociete | Id |
| 1 | 1 |
| 1 | 2 |
| 1 | 3 |
| 1 | 4 |
| 2 | 1 |
| 2 | 2 |
| 2 | 3 |
| 2 | 4 |
J'ai commencer à écrire un trigger pour calculer "Id" mais il ne fonctionne pas :
Code:
1 2 3 4 5 6 7 8 9 10 11
| DELIMITER $$
CREATE TRIGGER TRG_BI_CLIENT BEFORE INSERT
ON client
FOR EACH ROW
BEGIN
DECLARE IdIncremente int;
IF (NEW.id = "") THEN
IdIncremente = SELECT MAX(id)+1 FROM client WHERE idSociete = NEW.idSociete;
SET NEW.id = IdIncremente ;
END IF;
END $$ |
Si quelqu'un a la solution je suis preneur...
Merci d'avance