|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | |
|
Invité de passage
![]() Inscription : septembre 2006 Messages : 8 ![]() |
Bonjour (ou bonsoir c'est selon),
J'ai une table qui contient des données qui ont été chargées il y-a longtemps depuis un autre sgbd (j'ignore lequel). Le type qui a fait l'import des données à l'époque n'a pas pensé aux éventuelles différences de jeu de caractère et je me retrouve avec des '¿' et autres cochonneries dans une colonne de type Long de ma table . Naturellement on me demande d'y remédier . Si je veux, par exemple, enlever les ¿ je lance : Code :
UPDATE MATABLE SET DESCRLONG = REPLACE(DESCRLONG,CHR(191)) Citation:
Question simple : l'un(e) d'entre vous aurait-il (ou elle) une brillante idée pour faire des remplacements de caractères indésirables dans cette colonne de type long ? Ha oui j'allais oublier ... Oracle 9.2.0.7 (nls_language = american, nls_territory = america, nls_characterset = WE8ISO8859P15 .... rien de très exotique en somme) Par avance merci à celles et ceux qui prendront un peu de temps pour m'aider dans ma démarche |
|
|
|
00
|
|
|
#2 |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
transformation en CLOB et replace
|
|
|
00
|
|
|
#3 | |
|
Invité de passage
![]() Inscription : septembre 2006 Messages : 8 ![]() |
Citation:
|
|
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Inscription : avril 2005 Messages : 1 672 ![]() |
Pourquoi ne pas procéder de la manière suivante :
- créer une colonne temporaire dans cette table de type VARCHAR2 dans laquelle tu copies le contenu de ta colonne LONG - appliquer ton REPLACE sur la colonne en VARCHAR2 - copier les données de la colonne VARCHAR2 vers celle en LONG - supprimer la colonne temporaire Il ne s'agit que d'une suggestion et je n'ai pas testé ma démarche donc je ne garantis pas que ce soit faisable.
__________________
Modérateur des forums Oracle et Langage SQL Forum SQL : je n'interviens PAS plus de 4 fois dans une discussion car si c'est nécessaire cela prouve généralement que vous n'avez pas respecté : les règles du forum |
|
|
00
|
|
|
#5 |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
ou création d'une table d'une seule colonne pour faire le TO_LOB, REPLACE et update de la table d'origine... gare aux perfs
|
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Inscription : septembre 2006 Messages : 8 ![]() |
@Magnus : j'y ai songé mais il y-a trop de données dans mon champ long pour pouvoir le passer dans un varchar2 (limité à 4000 caractères il me semble)
@Fred_D : je vais tester la piste que tu suggères, merci |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com