首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >sp_executesql中的变量

sp_executesql中的变量
EN

Stack Overflow用户
提问于 2017-05-27 15:40:02
回答 1查看 261关注 0票数 1

我有一段代码:

代码语言:javascript
运行
复制
DECLARE @v int;  
DECLARE @SQLString nvarchar(500);  
DECLARE @ParmDefinition nvarchar(500);  
DECLARE @max_title varchar(30);  

SET @IntVariable = 197;  
SET @SQLString = N'SELECT @max_titleOUT = max(JobTitle)   
   FROM some_table 
   WHERE name = @level';  
SET @ParmDefinition = N'@level tinyint, @max_titleOUT varchar(30) OUTPUT';  

EXECUTE sp_executesql @SQLString, @ParmDefinition, @level = @v, @max_titleOUT=@max_title OUTPUT;  
SELECT @max_title;  

我对这一行有点困惑:

代码语言:javascript
运行
复制
       WHERE name = @level';

如果@v是一个字符串而不是int变量,我应该像这样用引号将@level括起来吗?

代码语言:javascript
运行
复制
       WHERE name = ''@level''';

什么时候应该用引号将@SQLString中的变量括起来

EN

回答 1

Stack Overflow用户

发布于 2017-05-27 15:43:45

不,@level@v是变量。你不应该到处放引号。

什么时候应该在@SQLString内的变量两边加引号?

无处可去

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44214292

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档