Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1232 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [Oracle]Non Key preserved Table

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Oracle]Non Key preserved Table

n°662410
AGA
La boîte à Bokeh!
Posté le 04-03-2004 à 08:39:13  profilanswer
 

Bonjour,
 
je voudrais créer une vue permettant de rajouter des informations à une table d'employés (les modifications ne peuvent pas être un rajout de colonnes car nous n'avons pas la maitrise de cette table suceptible de changer).
Pour cela j'ai créé une table supplémentaire "infos" contenant la même clé primaire que employés et les champs nécessaires "animal de compagnie", "photo".
 
Je crée ma vue en jointant (externe) sur la clé primaire dechacunes des tables.
 
J'obtiens donc dans cette vue, l'ensemble des employés et les "infos" si il y en a.
 
Le but est d'ajouter des infos au moyen de cette vue!
Mais cela ne fonctionne pas : "Non Key Preserverd Table" :/

mood
Publicité
Posté le 04-03-2004 à 08:39:13  profilanswer
 

n°662480
thecoin
Chasseur de chasseur de canard
Posté le 04-03-2004 à 10:13:14  profilanswer
 

Utilise la vue ALL_UPDATABLE_COLUMNS pour savoir si tu peux inserer ou updater tes colonnes.

n°662530
AGA
La boîte à Bokeh!
Posté le 04-03-2004 à 11:01:25  profilanswer
 

EN fait, je vais créer un trigger sur la première table pour avoir un enregistrement dans la deuxième. ;)
 
Mais autant ça marche bien sur l'insertion (mon trigger) autant ça merde à l'update et au delete.
 
Une idée? voici le code

Code :
  1. CREATE OR REPLACE TRIGGER ADMGRH.AUTOINSERT
  2. BEFORE INSERT
  3. ON ADMGRH.PERSONNEL
  4. FOR EACH ROW
  5. BEGIN
  6. if UPDATING then
  7. UPDATE infos
  8. SET code = :new.matricule;
  9. end if;
  10. if INSERTING then
  11. INSERT INTO infos
  12. VALUES( ''
  13. , ''
  14. , ''
  15. , :new.matricule);
  16. end if;
  17. if DELETING then
  18. DELETE FROM INFOS
  19. WHERE code = :old.matricule;
  20. end if;
  21. END;
  22. /

n°662552
AGA
La boîte à Bokeh!
Posté le 04-03-2004 à 11:11:37  profilanswer
 

Before insert, puis if updating, c'est bien AGA mais faut aller dormir là hein.
 
désolé :sweet:


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [Oracle]Non Key preserved Table

 

Sujets relatifs
Comment attacher à access 1 table DBase indexée par 1 fichier .cdx?Styliser une table
Vue - Oracle 8.1.7 Left join?[ORACLE] Interface Administration?
comment faire pour transferer une table de access a mysql ?[ORACLE + ASP] Possible d'ajouter un user a partir d'une page asp ?
[oracle] et .net, mes sessions oracle se multiplient ?[oracle] renvoyer contenu d'une requete vers un fichier TXT
[MySQL] comment vérifier que la table existe déjà ?effacer les champs dune table...
Plus de sujets relatifs à : [Oracle]Non Key preserved Table


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR