Bonjour,
Dans une procédure je transfère des données dans un fichier .lis via la commande UTL_FILE. Ces données doivent être ordonnées en colonnes et chaque colonne peut recevoir des données de tailles différentes (essentiellement du VARCHAR2). Cela devrait donner ceci:
Mais cela donne ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
Pour le moment j'utilise la commande CHR(9) pour faire des tabulations et séparer les colonnes.
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
Le problème est qu'en VARCHAR2 la commande CHR(9) s'avère inutile. En effet certaines de mes données peuvent varier de 5 à 30 caractères. Je me disais donc que convertir en CHAR mes données (reçues via des select) serait la solution.
J'ai testé en utilisant des variables déclarées en CHAR qui reçoivent les données en VARCHAR2. En code cela donne quelque chose comme ça:
Cette solution fonctionne mais cela me fait beaucoup de variable à déclarer, et je n'aime pas le fait que les déclarations soient faites en dur (c'est-à-dire que la taille des variables soient entrées dans le code).
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Je pose donc ma question, y a t-il une commande pour convertir un VARCHAR2 en CHAR ?
Si non auriez-vous une autre solution ?
PS: évidemment quand je dis convertir en CHAR cela veut dire gardé la taille du VARCHAR2 : VARCHAR2(30) -> CHAR(30) même s'il n'y a que 15 caractères.

 

 
		
		 
         
 

 
			
			


 
   


 Convertir VARCHAR2 en CHAR
 Convertir VARCHAR2 en CHAR
				 Répondre avec citation
  Répondre avec citation

Partager