begin process at 2008 07 06 07:06:30
1 205 472 membres
51 nouveaux aujourd'hui
14 119 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

SQL SERVER - COMMENT SUPPRIMER LES RETOUR-CHARIOT D'UN CHAMP TEXTE


Information sur la source



Description

Dans de nombreux cas, on se retrouve avec des champs texte contenant des retour-chariot que l'on voudrait supprimer afin de directement fournir le résultat nettoyé à l'application demandeuse.

Voila donc la méthode très simple.

Source

  • SELECT
  • REPLACE(REPLACE(MonChampAvecCRLF, CHAR(13), ' '), CHAR(10), ' ') AS MonChampSansCRLF,
  • FROM
  • MaTable;
SELECT
 REPLACE(REPLACE(MonChampAvecCRLF, CHAR(13), ' '), CHAR(10), ' ') AS MonChampSansCRLF,
FROM 
 MaTable;

Conclusion

Bon coding

Romelard Fabrice
  • signaler à un administrateur
    Commentaire de Mindiell le 20/04/2006 10:17:52

    Intéressant, je considère cependant que c'est à l'application en amont, ou au SQL au moment ou tu enregistres l'information, que cela doit être fait. Cela permet d'avoir une base dont on est sur .
    La tienne pourrait ne contenir aucun retour chariot si tu faisais ca en amont, plutot qu'en aval...

    Bon courage !

    PS: Ceci n'est pas une critique du code, je m'en excuse, c'est plus une philosophie de programmation.

  • signaler à un administrateur
    Commentaire de fabrice69 le 20/04/2006 10:59:49 administrateur CS

    Bonjour,
    Je comprends tout à fait la remarque et j'aquiesce la dessus.
    Le serveur SQL ne devrait pas avoir à transformer les données à ce moment la.
    En revanche, les datas sont dans l'état qu'ils sont à l'orgine et les retour-chariots peuvent être utiles pour d'autres parties du développements, d'où la non modification des données en amont.
    J'ai cherché à faire cette modification dans le code C#, mais me suis confronté à des problèmes avec cette recherche.
    Ne voulant pas me prendre la tête et utilisant une Proc Stock spécifique, j'ai trouvé plus élégant de faire ce travail par SQL Server.

    Romelard Fabrice


  • signaler à un administrateur
    Commentaire de Mindiell le 20/04/2006 14:04:07

    Peut-on imaginer une colonne supplémentaire pré-nettoyée ?
    Si les résultats sont intéressants avec ET sans CRLF, je pense que c'est alors à l'application de s'en occuper tout de même :o)

  • signaler à un administrateur
    Commentaire de allopeck le 19/11/2007 14:05:19

    Bonjour ,
    Voila je débute dans le domaine de la programmation et j'ai un petit problème.
    J'ai crée une base de donnée sous access en effectuant un transfert à partir d'un fichier texte. Seulement j'ai un petit carré ( retour chariot je pense ? ) qui se glisse de temps en temps ? J'ai essayé votre fonction, je suis allé dans requête j'ai mis mode SQL et j'ai tapé ceci :
    SELECT
    REPLACE(REPLACE(Date, CHAR(13), ' '), CHAR(10), ' ') AS DateCRLF,
    FROM
    Dataglobal;
    et j'ai le message suivant :"The select statement includes a reserved word or an argument name that is misspelled or missing, or the punctuation is incorrect

  • signaler à un administrateur
    Commentaire de allopeck le 19/11/2007 14:05:53

    Voila donc est ce que quelqu'un pourrait m'aider ?
    merci
    peck

  • signaler à un administrateur
    Commentaire de fabrice69 le 19/11/2007 14:58:18 administrateur CS

    Bonjour,

    Comme le nom le dit, ce code est adapté pour SQL Server. Je ne travaille pas sur ACCESS et ne peux donc pas vous aider.
    Je vous invite à poser votre question sur le forum.
    Cordialement
    Romelard Fabrice [MVP]

Ajouter un commentaire

Pub



Appels d'offres

Plugin Dialer outlook
Budget : 2 000€
Travail graphique- ill...
Budget : 1 000€
creation de marque et ...
Budget : 1 000€

CalendriCode

Juillet 2008
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Boutique

Boutique de goodies CodeS-SourceS