requêtes entre BDD Oracle différentes - SQL/NoSQL - Programmation
Marsh Posté le 05-12-2005 à 16:40:32
faut changer le charset à la volée durant le insert.
j'ai plus la syntaxe en tête, mais c'est possible, je l'ai fait.
le but du jeu à l'époque était d'échanger des caractères étendus entre d'un côté une base configurée en UTF-8 et de l'autre une base configurée en ASCII Latin-1. On s'était bien amusé pour les caractères japonnais et arabes... en effet, écrire de l'utf dans une base ASCII, aucun problème... par contre, pour relire...
je me souvient que c'était un bordel pas possible, il fallait caster deux fois, mais je n'ai plus aucun souvenir de comment on avait fait.
Marsh Posté le 06-12-2005 à 09:40:45
Arjuna a écrit : faut changer le charset à la volée durant le insert. |
Gargl!
Voilà qui est dommage pour ta mémoire... Si quelqu'un d'autre a une idée...
Ce serait pas à l'aide des fonctions tochar ou to_nchar par hasard ?
Marsh Posté le 06-12-2005 à 09:58:49
de mon côté, je n'ai jamais touché au type "nvarchar" d'oracle, car il est inutile pour mettre de l'unicode, un varchar2 suffit.
nan, par contre, les "nls_machintruc('avec plein de carctères dans tous les sens')" ça oui faut les utiliser.
Marsh Posté le 05-12-2005 à 15:25:18
Bonjour,
Je dispose d'une base Oracle ORADB1 avec le paramétrage suivant :
et d'une deuxième base Oracle ORADB2 avec le paramétrage suivant :
Dans les 2 bases, j'ai une table TOTO.F0101 qui a une colonne de type différent selon la base :
Ma question : est-il possible de faire un requête du style "INSERT INTO TOTO.F0101@ORADB2 SELECT * FROM TOTO.F0101@ORADB1" ?
J'ai essayé de le faire "bêtement" en ouvrant une session SQL*Plus sur ORADB1 et en exécutant une telle requête mais la table est illisible de l'autre côté.
Merci pour votre aide.
Cordialement,