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 :

Trigger Incrementation apres insertion


Sujet :

Développement SQL Server

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 63
    Points : 28
    Points
    28
    Par défaut Trigger Incrementation apres insertion
    Bonjour à tous,

    je débute dans les Triggers, je viens de lire qlq tutos sur les triggers et je me suis mis à écrire un trigger simple à mon avis mais il fonctionne pas ......je voulais donc incrémenter ma clé étrangère (normalement l'incrémentation se fera automatiquement car c'est une clé primaire dans ma table principale ???) à chaque nouvelle insertion
    Voici donc mon code apparemment la syntaxe n'est pas juste

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    CREATE TRIGGER INC_REFERENCE ON CONTROLES AFTER INSERT  
     
     
    	BEGIN 
    		reference_id = reference_id+1;
    	END
    Merci de votre aide

    PS. Je travaille sur MS SQL 2000

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 849
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 849
    Points : 52 975
    Points
    52 975
    Billets dans le blog
    6
    Par défaut
    SQL Server dispose d'un auto incrément automatique avec le propriété identity qu'une colonne numérique exacte de la table peut revêtir.

    Inutile donc de réinventer (mal) la roue.

    A +

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 63
    Points : 28
    Points
    28
    Par défaut
    Merci pour la réponse,

    est ce que vous pouvez me parler un peu plus de la propriété identity, j'avoue que j'ai jamais entendu parler.

    et sinon est ce que c'est possible de réaliser un Trigger qui va consister à envoyer un email à une boite outlook à chaque nouvelle insertion pour indiquer cette dernière.

    merci d'avance

  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 249
    Points : 1 745
    Points
    1 745
    Par défaut identity

  5. #5
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 849
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 849
    Points : 52 975
    Points
    52 975
    Billets dans le blog
    6
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    CREATE TABLE T_TEST_TST
    (TST_ID    INT NOT NULL IDENTITY PRIMARY KEY,
     TST_DATA  VARCHAR(32))
    désormais à chaque insertion la colonne TST_ID sera incrémentée. Ne rien y insérer dedans.
    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    INSERT INTO T_TEST_TST VALUES ('toto')
     
    SELECT * FROM T_TEST_TST
    est ce que c'est possible de réaliser un Trigger qui va consister à envoyer un email à une boite outlook à chaque nouvelle insertion pour indiquer cette dernière.
    oui !

    Il faut cepandant configurer le système de mail sous 2000 et c'est très merdique. Tu peut en revanche passer par des appels OLE à un serveur SMTP.

    A +

Discussions similaires

  1. Trigger : update apres un insert
    Par xav_carene dans le forum SQL
    Réponses: 4
    Dernier message: 18/08/2010, 17h48
  2. Créer un trigger apres insertion
    Par Msysteme dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 13/05/2009, 14h10
  3. Récupérer la valeur de l'auto increment apres insertion en base
    Par altiman dans le forum Persistance des données
    Réponses: 5
    Dernier message: 02/06/2008, 11h47
  4. Trigger auto_increment apres chaque insertion
    Par agur29 dans le forum SQL Procédural
    Réponses: 10
    Dernier message: 29/10/2007, 16h47
  5. Trigger Incrementation apres insertion
    Par agur29 dans le forum Développement
    Réponses: 1
    Dernier message: 02/08/2007, 13h40

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