Bonjour et merci d'avance,

Voila j'ai une table "Client" qui se trouve répartie (le même schéma) sur 3 postes reliés par un réseau local filaire, et j'ai deux dblink POSTE1 et POSTE2 la troisième table étant sur mon poste local

Client, Client@POSTE1, Client@POSTE2

Je veut réaliser les procédures SELECT, UPDATE, INSERT, DELETE de la manière la transparente possible sur les trois postes,

Je suis très débutant en oracle, bon voila mon soucis est que il arrive dans la journée que l'un des trois postes soit indisponible pour un certain moment, et j'aimerai gérer cela sans répliquer les données pour le moment,

Pour simplifier disant que j'ai deux tables réparties sur les trois postes:

Client (Numclient, Numposte, Nom, Prenom); Clé primaire Numclient et Numposte
Achat(Numachat, Numposte, Numclient, Date, Montant); Clé primaire Numachat et clé étrangère Numposte et Numclient

Je commence par le SELECT et le INSERT:

INSERT: insère une ligne dans la table se trouvant dans le poste local, comme exemple mon POSTE est le Numéro 3:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
create procedure NewClient(Nom in varchar,Prenom in varchar)
as
   id integer;
begin
    SELECT client_numclient_seq.nextval into id FROM DUAL;
    INSERT INTO CLIENT VALUES (id, 3, Nom, Prenom);
end;
SELECT: j'ai créer une vue CLIENTS:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
CREATE VIEW CLIENTS as (SELECT * from CLIENT) UNION (SELECT * from CLIENT@POSTE1) UNION (SELECT * from CLIENT@POSTE2);
et je met:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
SELECT * FROM CLIENTS;
Le problème est que si l'un des postes poste 1 ou poste 2 est indisponible ou éteint j'ai:

ERROR at line 1:
ORA-02068: following severe error from POST1
ORA-03113: end-of-file on communication channel
et moi je voudrais avoir une procédure à la place par exemple,
la liste des clients se trouvant dans mon POSTE+POSTE2
+ un message d'erreur "Attention données incomplètes! POSTE2 indisponible"

C'est à dire avoir quand même des résultats en ignorant l'exception et la remplaçant par un message personalisé pour POSTE1 et POSTE2 ou les deux en même temps

S'il y a quelqu'un pour m'aider à faire cela sa serait sympa, merci d'avance