{Oracle} trigger de verification

Résolu
Bonjour à tous,
je vais poser directement poser ma question:
est ce que vous saver comment créer un trigger qui permet de vérifier l'unicité d'une clé primaire lors de l'insertion d'un tuple...
est ce qu'il faut utiliser :new.cle is unique ?
et merci...
Configuration: Windows XP Internet Explorer 7.0

9 réponses

  1. tu n'a pas besoin d'un trigger pour cela

    une simple definition de ta clé en unique ne suffirait-elle pas ??

    Adns
    1
    1. mais j'ai un exercice qui me demande de faire ce trigger...je sais qu'il n'est pas utile.
      svp proposer moi ce que je dois faire ......
      0
  2. alalalalal

    les profs nous font toujours faire des truc bizarre...

    pourquoi ne pas faire un
    select count(*) as nb from table where tonchampunique = :new.tonchampunique;
    if nb > 0 then
    --erreur
    end if

    Adns
    1
    1. bonjour

      peux tu être un peu plus précis ??

      car la comme ca je ne vois aucune utilité a créer un trigger pour l'unicité d'une clé...

      Adns
      0
      1. bon...je veux créer ce trigger pour empecher d'inseret un tuplet qui contient la meme clé...par exemple il peux m'afficher un message d'erreur.
        0
    2. Bonjour,
      j'ai un petit souci d'affichage de la selection d'un objet dans ma liste déroulante sous access 2007.
      Pourrais tu m'aider?
      Mag
      0
      1. désolé acces je connais pas du tout :S

        c'est du sql ??

        si oui tu peux toujours balancer ta requête et me dire l'erreur mais je te promet rien :S

        Adns
        0
        1. Merci pour ta réponse,Non ce n'est pas du sql mais du VBA.

          Private Sub Commande157_Click()

          Nom colonne.Value =Liste déroulante.Column(0)

          End Sub
          0
      2. Vraiment désolé je connais pas :S

        Adns
        0
        1. merci ands votre denier programme marche bien...
          0
          1. salut si j'ai bien compris ta demande ^_^
            pour le trigger je crois que tu peut utiliser juste un de type AFTER parce qu'il verfie les contraintes ou bien :

            create trigger verif on <nom table> for insert as
            begin
            if update(<champ clé>)
            {
            if exists(select * from <table>,inserted where <table>.<champ clé>=inserted.<champ clé>)
            {
            print ' un n-uplet avec meme clé exisit déja'
            rollback
            }}
            0