SQL

Beun -  
 fab -
Je cherche a creer une table sous Oracle mais la commande "autoincrement" n existe pas...
Comment creer la table
ma_table(id int,nom string) avec id qui s incremente automatiquement a chaque insertion??

Merci de m'ecrire un ch'ti bout de code :)

9 réponses

  1. barthoi Messages postés 545 Statut Membre 14
     
    Tu utilise quoi comme logiciel pour faire tes requêtes ??

    SQL+

    Access

    MySQL

    ??

    Car c'est pas tout à fait la même chose...

    :)
    0
    1. Beun
       
      Mes requetes s font au sein de pages .JSP... je vais chercher des infos au fil des pages....
      Ces pages vont donc faire des requetes pour l instant dans une bas e ACCESS...
      Mais je dois tout passer sous Oracle et je constate que la creation de mes tables va etre plus complike...
      voila...
      :)
      0
  2. alexei
     
    En ORACLE n'exicte pas "autoincriment", il faut crée un sequance et ensuite le triger, c'est comme ca marche....
    0
    1. Beun
       
      Merci....mais ca m avance pas vraiment ....comment cree t on cette sequence et ce triger ..kan interviennent ils???

      0
  3. alexei
     
    Tu peux utiliser Disigner 6/2000 pour crée une sequance, et sql+worksheet pour crée le trigger. Ou tu sait pas ke c ke ce?
    0
  4. alexei
     
    P.S. d'abord le sequance pour dans cette table, ensuit le trigger qui declanche à l'insertion.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Beun
     
    alexei>donc si je comprends bien..cette sequence n est pas un script SQL a inserer apres ton script SQL de creation de table....
    create table ma_table etc.....puis un truc pour faire la sequence...

    Moi ce ki minteresse est le script pour creer ce trigger ..
    un exmple serait le bienvenu...
    0
  7. alexei
     
    C'est un example de mon base Oracle, donc fait pas attention sur le nom de variable:
    CREATE OR REPLACE TRIGGER TRG_BENEFICIAIRES_INS
    BEFORE INSERT
    ON BENEFICIAIRES
    FOR EACH ROW
    BEGIN
    DECLARE
    valeur INTEGER;
    BEGIN
    SELECT seq_beneficiaires.nextval INTO valeur FROM dual;
    :new.idbeneficiaire := valeur;
    END;
    END TRG_BENEFICIAIRES_INS;

    Cette lignes est fait specailement pour "autoincriment" comme tu dis...
    0
  8. beun
     
    Oki.
    Merci
    c plus clair...je vé reagrder deux trois petis trucs en plus et ca devrait marcher...
    Bye
    0
  9. fab
     
    salut

    Le plus simple est d utiliser une sequence oracle

    et ensuite d indexe avec non_de_ta_sequence.nextval

    coordialement

    FABRICE
    0