服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Sql Server - SQLSERVER 拼接含有变量字符串案例详解

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

2021-09-24 17:14人外有人 道阻且长 Sql Server

这篇文章主要介绍了SQLSERVER 拼接含有变量字符串案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下

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

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

示例一:

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

?
1
2
3
4
5
6
7
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)

执行:

?
1
exec  test  @testid=1

执行结果:

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

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

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

示例二:

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

?
1
2
3
4
5
6
7
8
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)

执行:

?
1
exec  test  @testid=1

执行结果:

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

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

原文链接:https://blog.csdn.net/qq_40640228/article/details/105773055

延伸 · 阅读

精彩推荐