Ajouter ou supprimer un retour chariot avec SQL Server

Exemples de requêtes en T-SQL pour ajouter pour supprimer un retour chariot.

Comment ajouter ou supprimer un retour chariot dans un texte avec SQL Server ? Une chaîne de caractères dans une variable ou une colonne SQL Server peut contenir des sauts de ligne. Par exemple, si vous copiez la chaîne vers Excel, votre ligne sera coupée. En effet, avec SSMS, choisir des données avec des retours chariot, alors l’écran affiche tout le texte sur la même ligne.

Par contre, faire ensuite un copier-coller depuis SQL Server ou dans votre éditeur de texte préféré comme Notepad++ par exemple. Le texte peut contenir des sauts de ligne. Un autre exemple courant est de copier et coller une grande quantité de données depuis un résultat de requêtes depuis SSMS vers Excel avec des sauts de ligne. La feuille Excel affiche des données non alignées, différentes du résultat de la requête originale. Le tableau n’est pas structuré comme vous le souhaitiez car chaque saut de ligne crée une nouvelle ligne.

Le nombre de colonnes et de lignes dans le fichier Excel est donc différent ! Ces sauts de ligne sont souvent un problème dans les très gros fichiers car ils sont difficiles à trouver et à réparer. La solution est donc de les supprimer directement dans la requête SQL Server.

1. Créer une colonne SQL Server avec des retours chariots

Tout d’abord, préparer une table avec quelques données d’échantillons avec des sauts de ligne. Le but est de diviser ici la colonne adresse en trois lignes différentes.

-- Si la table des clients existe déjà, alors supprimer la table
IF exists( 	SELECT 1 FROM sys.objects
            WHERE object_id = object_id(N'dbo.CUSTOMERS') AND type in (N'U') )
BEGIN DROP TABLE [dbo].[CUSTOMERS]
END;

-- Création de la table des clients
CREATE TABLE [dbo].[CUSTOMERS] (
    [CustomerID] INT IDENTITY(1,1),
    [FirstName] NVARCHAR(20),
    [LastName] NVARCHAR(20),
    [AddressText] NVARCHAR(100),
    [CountryCode] NVARCHAR(3),
    [CountryName] NVARCHAR(50)
);

-- Insertion des coordonnées d'un client avec des sauts de lignes
INSERT INTO dbo.CUSTOMERS ( FirstName, LastName, AddressText, CountryCode, CountryName )
VALUES ( N'SMITH',N'John', 
N'123,
Mount Gatineau Avenue,
Ottawa',
N'CA',N'CANADA');

-- Vérifier les résultats avec une requête SELECT
SELECT 	* 
FROM 	dbo.CUSTOMERS;

Pour aller plus loin, voici la documentation de la fonction intégrée REPLACE de SQL Server.

2. Supprimer un retour chariot dans une colonne SQL Server

Pour continuer, copier et coller maintenant la colonne Texte de l’adresse à partir du résultat SQL Server. Remarquer que l’adresse contient deux sauts de ligne, comme dans l’instruction INSERT:

123,
Mount Gatineau Avenue,
Ottawa

Pour supprimer ces sauts de ligne SQL, utiliser la fonction replace du serveur SQL. En effet, les codes spécifiques CHAR(13) et CHAR(10) représentent les caractères du saut de ligne, puis on les remplace par un espace ou une virgule, par exemple:

-- Check the results
SELECT   CustomerID, FirstName, LastName, AddressText
FROM   dbo.CUSTOMERS;

-- Using the REPLACE function to remove the line breaks
SELECT   CustomerID, FirstName, LastName,
        REPLACE(AddressText,CHAR(13)+CHAR(10),' ')
FROM dbo.CUSTOMERS;

Cette fois, le copier-coller du texte nous donne ce résultat. Il affiche clairement l’adresse du client sans aucun retour à la ligne. Les trois parties de l’adresse sont maintenant sur la même ligne.

123, avenue du Mont Gatineau, Ottawa

Code pour supprimer un retour chariot avec SQL Server depuis SSMS
Supprimer un retour chariot avec SQL Server

Ainsi ajouter ou supprimer un retour chariot avec SQL Server sont simplement deux opération inverses, mais effectuées avec les mêmes fonctions textes T-SQL.

Voici un autre tutoriel pour apprendre comment découper un texte après un caractère avec SQL Server.

Découper un texte après un caractère en T-SQL

3. Ajouter un retour à la ligne à une colonne SQL Server

A l’inverse, pour ajouter un retour chariot à une colonne depuis une requête T-SQL, il suffit donc d’ajouter les deux caractères spéciaux ci-dessous, concaténés:

  • CHAR(13)
  • CHAR(10)

La requête ressemble à cela. Pour voir les retours chariots, activer l’option « Résultats vers Textes » depuis SSMS.

-- Requête pour ajouter un retour chariot et construire l'adresse complète du client
SELECT 
	[CustomerID]
	,[FirstName]
	,[LastName]
	,[AddressText] + CHAR(13) + CHAR(10)
	+[CountryCode] + CHAR(13) + CHAR(10)
	+[CountryName] AS [FullAdress]
FROM 	dbo.CUSTOMERS;

4. Utilité des retours chariots en informatique

Les retours chariots ou sauts de ligne sont des ponctuations visuelles essentielles dans l’écriture de textes, car ils permettent de marquer la fin d’un paragraphe et le début d’un autre. Cette pratique remonte aux manuscrits anciens, où les scribes utilisaient des lignes verticales pour séparer les différentes sections du texte.

Les retours chariots sont importants pour deux raisons principales. D’abord, ils créent une séparation visuelle claire entre les paragraphes, permettant ainsi une meilleure organisation et une lecture plus facile. Ensuite, ils créent des espaces blancs sur la page, ce qui contribue à la lisibilité et à l’aération du texte.

Lorsqu’un retour chariot est utilisé, cela donne au lecteur une pause naturelle dans sa lecture, lui permettant ainsi d’assimiler plus facilement ce qu’il a lu jusqu’à présent. Cela aide également à éviter toute confusion entre les différents paragraphes et sujets abordés dans le texte.

Sauts de ligne et retours chariot en informatique

En programmation informatique, le retour chariot est une commande qui permet de commencer une nouvelle ligne de texte à l’écran. Il est utilisé dans des langages de programmation tels que le T-SQL pour indiquer au SGBD de descendre d’une ligne. Et ainsi de commencer à écrire au début de la ligne suivante.

Le retour chariot est également appelé « nouvelle ligne » et est souvent utilisé comme code pour indiquer la fin d’une ligne de texte dans de nombreux langages de programmation. En réalité, les retours chariot sont donc des éléments clés de la programmation informatique, utilisés pour organiser et structurer le code en lignes de texte distinctes.

Une nouvelle ligne est équivalente au CR+LF (Carriage Return + Line Feed)

Le retour chariot (CR) est une commande qui permet de déplacer le curseur au début de la ligne suivante. Pour marquer la fin de chaque ligne logique dans un fichier texte, utiliser la séquence CR+LF, également appelée retour chariot « dur ». Cette combinaison de caractères est le marqueur de fin de ligne le plus élémentaire et permet de séparer les lignes de texte dans un fichier de données. Elle peut également être utilisée pour indiquer qu’un caractère ne doit pas être imprimé sur la ligne en cours.

Pour finir, une nouvelle ligne est équivalente à la séquence CR+LF et permet de bien structurer un fichier texte en séparant chaque ligne logique.

Conclusion

Ainsi, ce tutoriel montre comment supprimer ou ajouter les retours chariots avec SQL Server depuis une colonne. Voici une autre requête SQL pour diviser une chaîne de caractères en deux parties. Comme par exemple un nom de fichier et une extension de fichier. Et délimitées par un caractère quelconque comme un point.

En conclusion, les retours de chariot ne sont pas un problème majeur dans SQL Server. Il suffit simplement de bien les gérer. Ils peuvent être traités en s’assurant que les caractères CHR(10) et CHR(13) soient détectés et gérés correctement. Les contrôles de la saisie des données aident à réduire le nombre de caractères insérés par erreur dans les tables.

Questions sur les retours à la ligne

Qu’est-ce qu’un retour chariot ou retour à la ligne ?

Un retour chariot, également appelé saut de ligne, est une commande qui permet de couper une ligne de texte en deux ou plusieurs parties et de poursuivre le texte sur la ligne suivante. Cette commande est utilisée pour séparer les paragraphes et créer des espaces blancs sur la page afin d’améliorer la lisibilité du texte.

Quel est le meilleur outil gratuit pour éditer un fichier texte ?

Notepad++ est considéré comme l’un des meilleurs outils gratuits pour éditer des fichiers texte. Cet éditeur de texte offre une grande flexibilité dans la modification de fichiers de taille moyenne sans erreur. Il dispose également d’une reconnaissance avancée de la syntaxe pour de nombreux langages de programmation tels que XML, SQL, HTML, MS-DOS, Java, PHP, entre autres.

Quelle est la différence entre les caractères spéciaux char(13) et char(10) ?

Les caractères spéciaux char(13) et char(10) sont utilisés pour les retours à la ligne dans les fichiers texte. Char(13) correspond au retour chariot, qui ramène le curseur au début de la ligne, tandis que char(10) correspond au saut de ligne, qui avance le curseur à la ligne suivante. Les systèmes d’exploitation Windows utilisent souvent la séquence de caractères char(13)+char(10) pour les retours à la ligne, tandis que les systèmes Unix/Linux utilisent généralement uniquement char(10).

Comment supprimer un saut de ligne dans une colonne avec SQL Server ?

Pour supprimer les sauts de ligne dans une colonne avec SQL Server, vous pouvez utiliser la fonction REPLACE. Cette fonction remplace toutes les occurrences d’une chaîne de caractères par une autre chaîne de caractères dans une colonne de la table sélectionnée.

Découper un texte après un caractère en T-SQL
Retour en haut