SQL存储过程参数问题
来源:互联网 发布:jquery定义一个空数组 编辑:程序博客网 时间:2024/05/16 04:55
create procedure myprocdure
@sqlstr nvarchar(1000)
as
exec (@sqlstr)
go
使用:
EXEC MYPROCDURE N'SELECT * FROM TABLENAME'
==============================
附:动态SQL基本语法
1:
普通SQL语句可以用Exec执行
eg: Select * from tableName
Exec('select * from tableName')
sp_executesql N'select * from tableName' -- 请注意字符串前一定要加N
2:
字段名,表名,数据库名之类作为变量时,必须用动态SQL
eg:
declare @fname varchar(20)
set @fname = '[name]'
Select @fname from sysobjects -- 错误
Exec('select ' + @fname + ' from sysobjects') -- 请注意 加号前后的 单引号的边上要加空格
exec sp_executesql N' select ' + @fname + ' from sysobjects'
当然将字符串改成变量的形式也可
declare @s varchar(1000)
set @s = 'select ' + @fname + ' from sysobjects'
Exec(@s) -- 成功
exec sp_executesql @s -- 此句会报错
declare @s Nvarchar(1000) -- 注意此处改为nvarchar(1000)
set @s = 'select ' + @fname + ' from sysobjects'
Exec(@s) -- 成功
exec sp_executesql @s -- 此句正确,
3: 输出参数
eg:
declare @num,
@sqls
set @sqls='select count(*) from ' + @servername + '.a.dbo.b'
exec(@sqls)
我如何能将exec执行的结果存入变量@num中
declare @num int,
@sqls nvarchar(4000)
set @sqls='select @a=count(*) from '+@servername+'.a.dbo.b'
exec sp_executesql @sqls,N'@a int output',@num output
select @num
declare @num varchar(10),
@sqls nvarchar(4000)
set @sqls='select @a='''''''''''''''' '
exec sp_executesql @sqls,N'@a varchar(10) output',@num output
select @num
- SQL存储过程参数问题
- SQL SERVER中存储过程参数问题
- SQL 数据库中的存储过程的参数问题(case when)
- SQL 存储过程参数解决方案
- Sql 存储过程传递参数
- 在论坛中出现的比较难的sql问题:14(存储过程问题 存储过程参数、存储过程内的参数)
- SQL Server存储过程和参数示例
- SQL Server存储过程和参数示例
- SQL Server存储过程和参数示例
- SQL读取存储过程返回的参数
- sql:存储过程,事务,out参数
- Java调用SQL存储过程 输入输出参数
- 存储过程中执行参数SQL语句
- SQL Server 存储过程的创建参数
- SQL Server存储过程数组参数
- Java调用SQL存储过程 输入输出参数
- SQL SERVER存储过程,参数默认值设置
- sql server 2008存储过程参数
- servlet学习笔记1——用户登录网站(servlet1.0)
- poj 1706 References
- VS2005中不能创建MFC智能设备项目的补丁
- 通过编辑框的值,使编辑框的值超出某个范围时具有告警背景色
- 堆 build_heapify() heap_sort() C++实现
- SQL存储过程参数问题
- 如何使你的MFC程序拥有XP风格
- HQL检索方式、QBC检索方式、SQL检索方式
- HQL检索方式、QBC检索方式、SQL检索方式
- HQL检索方式、QBC检索方式、SQL检索方式
- 有关Windows版本的宏
- Using Eclipse to compile Android source code
- 转:MySQL 备份和恢复
- 记录窗口的位置和大小