Bonjour,
Dans une procédure stockée, j'ai un SELECT du genre :
Le but étant de remplacer, dans le retour d'exécution de requête, le caractère hexadécimal (0x01) correspondant à une puce de document stockée dans la table par un ' - '
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 SELECT Champ1 , Champ2 , REPLACE(CONVERT(CHAR(8000), Champ3), CHAR(1), '-') AS Champ3 FROM MaTable WHERE Champ1 = 101
Étant donné que le Champ3 est de type ntext, je souhaiterais plutôt avoir quelque chose du genre :
Ceci afin de ne pas avoir de troncature à 8000.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 SELECT Champ1 , Champ2 , REPLACE(CONVERT(CHAR( DATALENGTH( Champ3 )), Champ3), CHAR(1), '-') AS Champ3 FROM MaTable WHERE Champ1 = 101
Mais apparemment, le CHAR( DATALENGTH (.. n'est pas accepté.
Y aurait il un autre moyen de contourner ce problème ?
Merci pour votre aide.
Cordialement,
Sébastien
Partager