如何格式化SQL Server中的列文本

时间:2018-02-09 06:34:25

标签: sql sql-server

我对SQL Server有疑问。在nvarchar数据类型的列中,数据的格式如下:

Hi XXX,

we do confirm that your assumption is correct.

Here in the following is the list data
deletion:

'1111111111'
,'222222222'
,'333333333'
,'444444444'

当我从列中复制上述数据并粘贴到记事本中时,它显示上述格式。

当我将此表的数据导入另一个表时,它的格式不是如上所示。当我在记事本中复制和粘贴时,它显示正常文本并且没有换行符。

如何在SQL Server中实现此方案?

1 个答案:

答案 0 :(得分:0)

当数据存储在表中时,SQL Server数据库表不显示换行符是正常的。因为这些换行符被假定为该列中的char。

据我所知,在将数据复制到新表并将其复制到记事本中后,您的问题无法保留换行符。所以我在这里做了一个例子。我使用SELECT复制了数据。它按预期工作。

CREATE TABLE x1(col NVARCHAR(100));

INSERT INTO x1(col) VALUES('With line breaks
breaks
breaks');

SELECT * FROM x1; -- I copied data to notepad. It worked fine

CREATE TABLE x1_COPY(col NVARCHAR(100));

INSERT into x1_COPY(col) SELECT col from x1;

SELECT * from x1_COPY; -- I copied data to notepad. It worked fine

更新2 我在这里处理了您的数据。

CREATE TABLE x1(col NVARCHAR(max));

INSERT INTO x1(col) VALUES('Hi XXX,

we do confirm that your assumption is correct.

Here in the following is the list data
deletion:

1111111111
,222222222
,333333333
,444444444');

SELECT * FROM x1

CREATE TABLE x1_COPY(col NVARCHAR(max));

INSERT into x1_COPY(col) SELECT col from x1; -- I have copied that column data with SELECT

SELECT * from x1_COPY -- After copying result of this in notepad. The result was as expected