Insertion avec condition trigger
Bonjour à tous,
Je viens de me creuser la tête à faire un trigger, qui fonctionne certes, mais pas comme je le voudrais :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| ALTER TRIGGER [dbo].[TRnumComInsert] ON [dbo].[TBcommande]
FOR INSERT
AS
BEGIN
declare @numCom as int
set @numCom = isnull((select max(numCom) from TBcommande) ,0) + 1
update TBcommande set numCom = @numCom
where idCom = (select idCom from inserted)
END |
En gros, il incrémente le numéro de commande de 1 par rapport au maximum des num commande.
Ok, par contre, j'ai dans ma base des données qui doivent être insérées dans des lignes suivantes, sauf que certaines auront le même numéro de commande (là, le numéro change à chaque ligne). :aie:
En gros, j'aimerais utiliser cette requête :
Code:
1 2 3 4
| select * from TBcommande
where idCom in (
select max(idCom) from TBcommande
) |
Elle me permet de visualiser le dernier enregistrement, et dans le résultat de celle-ci, il y a deux colonnes qui possèdent ou non la valeur NULL.
J'aimerais en fait pouvoir comparer avant l'insertion si mes deux colonnes sont <> NULL, alors on incrémente avec le trigger, si non, on garde le même numéro commande que le précédent.
Est-ce possible déjà ?
Merci :mrgreen: