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

Oracle Discussion :

Sequence casse tete


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 118
    Par défaut Sequence casse tete
    Bonjour,

    Sur Oracle 9.2.0.1.0 :
    J'ai un souci pour inserer dans une table, a priori, ca viendrait de la sequence pour la clé primaire.

    Sous le compte "robot" qui a les droits admin :
    Création de la table :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    DROP TABLE robot.t_robot_script_exec;
     
    CREATE TABLE robot.t_robot_script_exec
    (	robot_script_exec_id 		number         NOT NULL,
    robot_script_exec_script_id 	number         NOT NULL,
    robot_script_exec_bearer 		varchar2(50),
    	robot_script_exec_apn 		varchar2(100),
    	robot_script_exec_SLA_HC	number,
    	robot_script_exec_SLA_HP	number,
    	robot_script_exec_Trig_HC	number,
    	robot_script_exec_Trig_HP	number
    )
    création de la sequence :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    DROP SEQUENCE robot.robot_script_exec_id_seq;
     
    CREATE SEQUENCE robot.robot_script_exec_id_seq
    	Start With 1
    	Increment by 1;
    Contraintes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    ALTER TABLE robot.T_ROBOT_SCRIPT_EXEC
    	DROP CONSTRAINT PK_T_ROBOT_SCRIPT_EXEC;
     
    ALTER TABLE robot.T_ROBOT_SCRIPT_EXEC
    	ADD CONSTRAINT PK_T_ROBOT_SCRIPT_EXEC  PRIMARY KEY (ROBOT_SCRIPT_EXEC_ID)
    	USING INDEX TABLESPACE ind_xs;
     
    ALTER TABLE robot.T_ROBOT_SCRIPT_EXEC
    	ADD CONSTRAINT FK_T_ROBOT_SCRIPT_EXEC FOREIGN KEY (ROBOT_SCRIPT_EXEC_SCRIPT_ID) REFERENCES T_ROBOT_SCRIPT (ROBOT_SCRIPT_ID);
    Attributions des droits :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Grant Select, Update, Insert on robot.t_robot_script_exec  to ats_probe;


    Sous le compte "ats_probe" qui est celui qui fera l'insertion
    Alias :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    CREATE OR REPLACE SYNONYM t_robot_script_exec FOR robot.t_robot_script_exec;
     
    CREATE OR REPLACE SYNONYM robot_script_exec_id_seq FOR robot.robot_script_exec_id_seq;
    A partir de la, lorsque j'essaye d'inserer une ligne depuis le compte "ats_probe" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    INSERT INTO T_ROBOT_SCRIPT_EXEC 
    (ROBOT_SCRIPT_EXEC_ID,ROBOT_SCRIPT_EXEC_SCRIPT_ID,ROBOT_SCRIPT_EXEC_BEARER,ROBOT_SCRIPT_EXEC_APN,ROBOT_SCRIPT_EXEC_SLA_HC, 
    ROBOT_SCRIPT_EXEC_SLA_HP, ROBOT_SCRIPT_EXEC_TRIG_HC, 
    ROBOT_SCRIPT_EXEC_TRIG_HP) VALUES 
    (robot_script_exec_id_seq.nextval,7697,'WIFI','orange.fr',60,30,5,3);
    Je me mange une exception "Table ou vue inexistante" qui cible la sequence.

    Meme erreur lorsque je tente :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select robot_script_exec_id_seq.currval from dual;

    Quelqu'un sait-il comment resoudre ca ?

  2. #2
    Membre émérite Avatar de Yorglaa
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    845
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2004
    Messages : 845
    Par défaut
    donne aussi le droit de Select sur la SEQUENCE à ton user cible...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Grant Select on robot.robot_script_exec_id_seq to ats_probe ;

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 118
    Par défaut
    Exact ! En fait j'ay ai pensé aprés avoir posté le message.
    Malheureusement, ca ne change rien ...

  4. #4
    Membre émérite Avatar de Yorglaa
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    845
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2004
    Messages : 845
    Par défaut
    le fait est, également qu'un Select CURRVAL ne peut être fait que sur une séquence initialisée dans le contexte...

    c'est à dire essaye D'ABORD :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select robot_script_exec_id_seq.NEXTVAL from dual;
    PUIS
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select robot_script_exec_id_seq.currval from dual;
    ça donne quoi ?

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 118
    Par défaut
    en fait depuis le compte robot, tout est possible nextval, currval, insert dans une table avec la sequence ...
    Depuis le compte ats_probe nextval et currval renvoi l'erreur "table ou vue inexistante"
    J'ai recréé l'alias sur les deux comptes, j'ai "commité", rien n'y fait, il ne voit pas la sequence depuis le compte ats_probe.

  6. #6
    Membre émérite Avatar de Yorglaa
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    845
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2004
    Messages : 845
    Par défaut
    et si tu préfixe ta séquence avec le nom du propriétaire ? (Robot)

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

Discussions similaires

  1. [Bloqué]Macro autoexec casse tete
    Par torNAdE dans le forum Access
    Réponses: 24
    Dernier message: 12/07/2006, 15h09
  2. Tube nommé: un casse tête
    Par yashiro dans le forum Linux
    Réponses: 2
    Dernier message: 28/06/2006, 09h11
  3. Requete Casse tete... Help..
    Par Jerome218 dans le forum Requêtes
    Réponses: 2
    Dernier message: 24/01/2006, 05h57
  4. casse tete de requete
    Par moutey dans le forum Langage SQL
    Réponses: 2
    Dernier message: 14/12/2004, 14h00
  5. [casse-tete (pour moi)] recuperer la largeur d'un <div>
    Par Invité dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 05/11/2004, 07h39

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