动态数据库名称的时候,使用sp_executesql

Posted 王家小西

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了动态数据库名称的时候,使用sp_executesql相关的知识,希望对你有一定的参考价值。

 

参考http://www.yjs001.cn/view/17945868128847470518.html

这个链接,根据自己的情况写出

 

set @SqlSJX=select @SJX = COUNT(*) from + @SqlName + where Box not in (‘‘CGX‘‘,‘‘YSC‘‘,‘‘LJX‘‘) 
and isnull(Inside,0)=0 and MailDate<>‘‘‘‘ and CONVERT(date,RecDate,23) >= +‘‘‘‘+ cast(@StartTime as nvarchar(30)) +‘‘‘‘

exec sp_executesql @SqlSJX,N@SJX int output,@SJX output

 

对于https://docs.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sp-executesql-transact-sql微软官方例子又是另一种方法

DECLARE @IntVariable int;  
DECLARE @SQLString nvarchar(500);  
DECLARE @ParmDefinition nvarchar(500);  
DECLARE @max_title varchar(30);  

SET @IntVariable = 197;  
SET @SQLString = NSELECT @max_titleOUT = max(JobTitle)   
   FROM AdventureWorks2012.HumanResources.Employee  
   WHERE BusinessEntityID = @level;  
SET @ParmDefinition = N@level tinyint, @max_titleOUT varchar(30) OUTPUT;  

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

 

以上是关于动态数据库名称的时候,使用sp_executesql的主要内容,如果未能解决你的问题,请参考以下文章

SP_EXECUTESQL 中的 SQL 注入

如何在点击a标签下载文件的时候通过JavaScript动态的修改文件的名称?

后台接口,动态生成测试用例名称,测试用例请求数据

使用动态参数名称在多个数据库上执行存储过程

有没有办法在 bigquery 中使用动态数据集名称

使用动态表名称查询 Oracle 数据库