Précédent   Forum des professionnels en informatique > Bases de données > Oracle > Import/Export
Import/Export Forum d'entraide sur les outils d'import/export Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/09/2007, 12h16   #1
Invité de passage
 
Inscription : août 2002
Messages : 9
Détails du profil
Informations personnelles :
Âge : 40

Informations forums :
Inscription : août 2002
Messages : 9
Points : 1
Points : 1
Par défaut Import et trigger sour Oracle 10g

Bonjour à tous,

je travaille sur une application dans l'environnement Unix, Oracle 8.1.7 que je dois porter en Oracle 10g.
J'ai testé pas mal de chose, par contre une fonctionnalité en Oracle 8 n'a plus l'air de fonctionner en Oracle 10g, je m'explique.
Ma base contient plusieurs tables appartenant a un seul schéma (TOTO). Les données de certaines tables ne peuvent être insérées-modifiées-supprimées par tout le monde : exemple : ces tables ont un numéro de séquenciel (pas forcement une séquence Oracle) et si la ligne insérée-modifiée-supprimée a un numéro inférieur à une certaine valeur et que l'utilisateur Oracle n'est pas 'SUPERUTISATEURORACLE' alors l'insertion-modification-suppression est annulée. Tout cela bien évidement dans des triggers.
Pour l'import, on n'utilise le 'fromuser=SUPERUTISATEURORACLE touser=TOTO' et ça fonctionne très bien en Oracle8. Par contre, en 10g les triggers refusent d'insérer les lignes.
Alors si quelqu'un a une idée je suis preneur.
Par avance merci
PetCyr est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/09/2007, 10h00   #2
Membre expérimenté

 
Inscription : décembre 2003
Messages : 480
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 480
Points : 539
Points : 539
de quelle fonctionnalité parles-tu ? ce que tu nous dis là est des plus surprenant ! tu nous décris une sorte de Fine grained access control avant la lettre ...
__________________

*** OPN Exadata Specialist ***
*** OCE Performance Tuning 11g ***
*** OCE Rac 10g ***
*** OCP DBA 9i-10g-11g ***
Marc Musette est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/02/2008, 11h36   #3
Invité de passage
 
Inscription : août 2002
Messages : 9
Détails du profil
Informations personnelles :
Âge : 40

Informations forums :
Inscription : août 2002
Messages : 9
Points : 1
Points : 1
Bonjour,

j'ai du laissé tomber un temps ce portage et je dois le reprendre maintenant.

En fait, pour éclaircir un peu le problème, j'ai l'impression qu'en Oracle 10g (r2) lorsqu'on fait un imp toto/toto fromuser=titi touser=titi, l'utilisateur Oracle pour effectuer l'import n'est pas toto mais titi !
Je dis cela car les triggers vérifiant que c'est bien toto qui a le droit d'insérer des valeurs se déclenchent. Je l'ai vérifié en affichant la valeur de 'user' dans le message d'erreur du trigger :
Code :
1
2
3
4
5
6
7
CREATE OR REPLACE TRIGGER tib_matable before INSERT
ON matable FOR each row
begin
   IF (user != 'TOTO') then
       raise_application_error (-1, 'Utilisateur ' || user || ' non autorise !');
   end IF;
end;
La commande imp toto/toto fromuser=titi touser=titi ....
affiche le message "Utilisateur TITI non autorisé !"

Je ne comprends pas pourquoi l'utilisateur de connexion n'est plus utilisé en Oracle 10g alors qu'en 8i ca fonctionne.

Par avance merci
PetCyr est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h04.


 
 
 
 
Partenaires

Hébergement Web