IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement SQL Server Discussion :

Insertion avec condition trigger


Sujet :

Développement SQL Server

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2011
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2011
    Messages : 53
    Points : 33
    Points
    33
    Par défaut 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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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).

    En gros, j'aimerais utiliser cette requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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

  2. #2
    Membre éprouvé

    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 448
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 448
    Points : 1 234
    Points
    1 234
    Par défaut
    Votre demande n'est pas claire.

    Quelles sont les lignes que vous voulez mettre en relation ? Qu'est-ce qui lie ces lignes entre elles ? etc.
    Most Valued Pas mvp

Discussions similaires

  1. Réponses: 2
    Dernier message: 11/08/2012, 11h28
  2. Insertion avec condition d'existence
    Par Alvaten dans le forum Langage SQL
    Réponses: 8
    Dernier message: 09/05/2011, 17h59
  3. Update or insert avec conditions sur les champs
    Par calou_33 dans le forum SQL
    Réponses: 7
    Dernier message: 04/08/2010, 11h36
  4. Insertion avec condition
    Par cassou@laposte dans le forum Requêtes
    Réponses: 6
    Dernier message: 11/02/2007, 11h22
  5. INSERT avec condition d'une table à une autre
    Par papipasto dans le forum Langage SQL
    Réponses: 2
    Dernier message: 28/03/2006, 14h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo