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

SQL Oracle Discussion :

Formulaires access tables Oracle


Sujet :

SQL Oracle

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 17
    Points : 17
    Points
    17
    Par défaut Formulaires access tables Oracle
    Bonjour,
    voici mon problème.
    J'ai une base Access avec des formulaires et des requêtes. Je dois transférer cette base sous Oracle au plus vite. J'ai donc transférer mes tables sous Oracle et les ai liées dans Access. J'ai ensuite vérifié mes formulaires. Jusqu'ici tout va bien, sauf que quand je veux ajouter un nouvel enregistrement les clés primaires de mes tables (ID automatiques sous Access) ne se remplissent pas automatiquement. Comment faire?
    Merci

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Points : 5 345
    Points
    5 345
    Par défaut
    Bonjour,


    Il n'y a pas de de clef à incrémentation automatique sous Oracle.

    Il va falloir passer par des trigger + sequence.

    un exemple :

    la table
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    create table test (id number, testdata varchar2(255));
    la sequence :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    create sequence test_seq 
    start with 1 
    increment by 1 
    nomaxvalue;
    le trigger :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    create trigger test_trigger
    before insert on test
    for each row
    begin
    select test_seq.nextval into :new.id from dual;
    end;
    il y a plein d'autre exemple sur google, recherchez avec : oracle pk autoincrement

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 17
    Points : 17
    Points
    17
    Par défaut
    Merci pour votre réponse.
    Ça fonctionne bien apparemment mais suis-je sûre qu'il n'y aura pas de problèmes de conflits avec les valeurs déjà définie par Access?
    Est-ce que la fait d'avoir déclarer l'id en clé primaire fera en sorte que la sequence attribuera des valeurs différentes à celles déjà présentes (venant d'Access)?

  4. #4
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Points : 5 345
    Points
    5 345
    Par défaut
    hmm,

    il faudrait que vous initialisiez votre séquence au max actuel de l'id de votre table.


    Je vous laisse cherchez pour la manip.

  5. #5
    Membre chevronné Avatar de Garuda
    Homme Profil pro
    Chef de projet / Urbaniste SI
    Inscrit en
    Juin 2007
    Messages
    1 285
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet / Urbaniste SI
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 285
    Points : 2 071
    Points
    2 071
    Par défaut
    Une sequence + un trigger "for update on each row"
    Garuda गरूड
    Brahmâ la Guerre et Vishnu la Paix

    Oracle 12C R2 - Forms11GR2 - Toad 12 - sharePoint 2010

  6. #6
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 17
    Points : 17
    Points
    17
    Par défaut
    Oui évidemment!!
    Merci beaucoup je n'ai plus qu'à faire cela pour chacune de mes tables et je devrais pouvoir entrer les données dans Oracle via mes formulaires Access!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 23/03/2006, 15h35
  2. Réponses: 8
    Dernier message: 24/02/2006, 15h41
  3. transferer des tables oracle sous access
    Par lassmust dans le forum Oracle
    Réponses: 3
    Dernier message: 28/12/2005, 13h38
  4. Réponses: 1
    Dernier message: 24/10/2005, 21h28

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