SQL server字符串字段怎么存储换行符?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL server字符串字段怎么存储换行符?相关的知识,希望对你有一定的参考价值。

①怎么通过数据库查询器插入带有换行的文本?直接在文本中按下回车键吗?
②假设数据库已存储了带换行的文本,在MFC静态文本中怎么正常显示出来?关联变量CString类型的可以存储从数据库取出的换行符并换行显示出来吗?

工具/材料:Management Studio。 

1、首先在桌面上,点击“Management Studio”图标。 

2、之后在该界面中,点击左上角工具栏里“新建查询”按钮。 

3、接着在该界面中,输入字符串字段存储换行符的sql语句“insert into test2 (name) values ('abc\\r\\ndef');”。 

4、然后在该界面中,点击左上方工具栏里“执行”按钮。 

5、最后在该界面中,显示字符串字段存储换行符成功。

参考技术A

换行/回车,可以使用CHAR函数处理,比如:

insert into tbtest (text) values ('abc' + char(13)+char(10) + 'def')

主要还是要看你MFC它支持的换行是哪种形式: char(13)+char(10)形式还是使用转义的 \\r\\n 形式,如果是转义形式的话,可以直接使用

insert into tbtest (text) values ('abc\\r\\ndef')

参考技术B

    SQL 关键字 换行符号:char(10) ,回车:char(13)

    --> 测试数据:[TB]
    if object_id('[TB]') is not null
    drop table [TB]

    ---->建表
    create table [TB]([da] varchar(800))
     --存储过程
    alter proc ins
    @text nvarchar(2000)
    as
    declare @sql nvarchar(2000)
    set @sql='insert into TB  select '' '+replace (@text,' ',  '''+ char(10)+'' ')+''''
    --print @sql
    exec (@sql)

    --插入数据测试
    exec ins 'asdasdasdsa onqowoeon'
    --> 查询结果
    SELECT * FROM [TB]
    --> 删除表格
    DROP TABLE [TB]

    .假如需要拼接一段SQL 语句,并且需要于换行的模式显示

    declare @SQL nvarchar(max)

    set  @SQL=' select * from Table '+char(10)

    set @SQL=@SQL+' where a=10' +char(10)

    print @SQL:

    .结果如下:

    select * from Table

    where a=10

参考技术C 建议用“/r/n”存储,然后输出的时候再替换成换行符就可以了;

SQL Server 小知识

公司之前的项目里面的数据,名称后面有回车和换行符号

用下面的代码去掉了

replace(realname, char(10)+char(13),‘‘) 

realname是列名,这个函数在update语句中使用就可以了,就会删除掉回车换行符

 


 

字符串转日期类型

screenshot 是一个字段,字符串格式类似于20191122xxx.jpg之类的,用下面的方法可以转成datetime格式

cast(substring(ScreenShot,1,8) as datetime)

 

以上是关于SQL server字符串字段怎么存储换行符?的主要内容,如果未能解决你的问题,请参考以下文章

sql server查询结果集字段包含换行符导致复制到excel错位问题

oracle换行符,落表时怎么存

sql server 数据库换行符怎么使用

在sql server 数据库字段中如何加入回车符和换行符?

sqlserver中怎么将一列数据拼接成一个字符串,并以换行符分开

在sql server 数据库字段中如何加入回车符和换行符?