2015-11-16 5 views
0

В одном из столбцов используется ntext. Я хочу заменить новые строки и возврат каретки в космос, но я могу делать это только по одному. Есть ли способ, которым я мог бы использовать CHAR(10) и CHAR(13) в то же время, используя сценарий ниже на SQL Server 2012?Заменить новую строку в ntext

REPLACE(CAST(Description as NVARCHAR(MAX)), CHAR(10), ' ') AS Description 
+3

Почему вы используете 'ntext'? Используйте 'nvarchar (max)'. Документация Microsoft специально предостерегает от ее использования: https://msdn.microsoft.com/en-us/library/ms187993(v=sql.110).aspx. –

+0

'SELECT REPLACE (CAST (ОПИСАНИЕ AS NVARCHAR (MAX)), '', '') AS DESCRIPTION' – pedram

+0

@GordonLinoff У меня нет прав на изменение типа больше, потому что он был настроен как ntext в первый раз. – FoxyReign

ответ

0

Вы пробовали это?

REPLACE(CAST(Description as NVARCHAR(MAX)), ' 
', ' ') AS Description 
5

Чтобы заменить экземпляры CRLF, вы можете использовать:

REPLACE(CAST(Description as NVARCHAR(MAX)), CHAR(13)+CHAR(10), ' ') AS Description 

Для индивидуальной замены всех CRs и ЛФ, вы можете использовать:

REPLACE(REPLACE(CAST(Description as NVARCHAR(MAX)), CHAR(10), ' '), CHAR(13), ' ') AS Description 
+0

Это сработало красиво! – FoxyReign