SQLSERVER 拼接含有变量字符串案例详解

2023年 4月 15日 97.4k 0

一、拼接字符串(整个字符串不分割)步骤: 首先在字符串的前后加单引号; 字符串中的变量以'''+@para+'''在字符串中表示; 若在执行时存在类型转换错误,则应用相应的类型转换函数

一、拼接字符串(整个字符串不分割)步骤:

首先在字符串的前后加单引号;
字符串中的变量以'''+@para+'''在字符串中表示;
若在执行时存在类型转换错误,则应用相应的类型转换函数,对变量进行类型转换(如cast()函数)。

示例一:

包含SQL拼接字符串的存储过程:

Create Procedure Test
@TestID int
As
Declare @s nvarchar(800)
Set @s='Select * From dbo.Categories where CategoryID='''+cast(@TestID as varchar)+''''
print @s
exec(@s)

执行:

exec Test @TestID=1

执行结果:

在这里插入图片描述

二、拼接字符串(字符串分割)步骤:

将不包含变量的字符串前后用单引号括起来,
不含变量的字符串与变量用+进行拼接
变量用''''+@para+''''进行表示(@para为变量名);
若执行存储过程时出现类型转换错误,则采用相应的类型转换函数进行转换。

示例二:

包含SQL 字符串的存储过程:

Create Procedure Test
@TestID int
As
Declare @s nvarchar(800)
Set @s='Select * From dbo.Categories where CategoryID='+''''+cast(@TestID as varchar)+''''

print @s
exec(@s)

执行:

exec Test @TestID=1

执行结果:

在这里插入图片描述

到此这篇关于SQLSERVER 拼接含有变量字符串案例详解的文章就介绍到这了,更多相关SQLSERVER 拼接含有变量字符串内容请搜索每日运维以前的文章或继续浏览下面的相关文章希望大家以后多多支持每日运维!

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论