Incrémentation automatique en SQL

Ingrid -  
chuka Messages postés 980 Statut Membre -
Bonjour,
pourriez vous m'indiquer comment forcer l'incrémentation automatique des champs d'une colonne?
Cela se fait trés facilement sous access, mais je travaille avec du sql sous Oracle9i .
Merci d'avance de vos réponses.
Ingrid

4 réponses

  1. Luc MERIEN
     
    Polo a raison. La syntaxe est la suivante:
    CREATE SEQUENCE nom-sequence
    [ INCREMENT BY entier
    SATRT WITH entier
    MINVALUE entier
    MAXVALUE entier
    CYCLE (ou NOCYCLE)
    CACHE entier (ou NOCACHE)
    ORDER (ou NOORDER) ]

    A noter que tout ce qui est entre crochets est facultatif.
    3
    1. Ingrid
       
      Merci pour ta réponse,
      je n'arrivais pas à l'implementer donc je me suis arrangée avec des triggers.
      Saurais tu comment créer un trigger qui me lance une exception lorsque l'on veut inserer des champs qui existent déja dans la table.Comment éviter la redondance d'information lors d'un insert.

      Merci d'avance de ta téponse.

      Ingrid
      0
      1. Luc MERIEN > Ingrid
         
        Salut Ingrid,

        pourquoi utiliser un trigger pour gérer la redondance ? Il suffit simplement que tu crées une clé unique sur la table en question. Dès lors qu'un INSERT essaiera de créer un doublon, Oracle lui interdira automatiquement par un message du type "Unique constraint violated". @+
        0
  2. sou
     
    j'ai besoin d'une aide sur l'insertion d'un champ dans une table à l'aide de sql
    0
  3. polo
     
    Le mot clé pour cette incrémentation automatique chez oracle s'appelle séquence. Pour créer cette séquence je ne connais pas la synthaxe, mais il y a surement de la doc là dessus!
    -1
    1. Ingrid
       
      Merci pour ta réponse,
      je n'arrivais pas à l'implementer donc je me suis arrangée avec des triggers.
      Saurais tu comment créer un trigger qui me lance une exception lorsque l'on veut inserer des champs qui existent déja dans la table.Comment éviter la redondance d'information lors d'un insert.

      Merci d'avance de ta téponse.

      Ingrid
      0
  4. chuka Messages postés 980 Statut Membre 379
     
    salut,

    la commande basique est: insert into nom_de_ta_table(tes_champs...) values (tes_valeurs...)
    Quel est ton prb exactement??

    @+
    -3