帮我解释下这个存储过程,不知道这是啥意思

nicholasvb 2012-04-16 05:37:08
declare @p1 int
set @p1=1
exec sp_prepare @p1 output,NULL,N'SELECT * FROM inventory',1
select @p1

这几句作用是什么啊?
大侠 解释下 !
...全文
131 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
了解 2012-04-17
  • 打赏
  • 举报
回复
LZ:

准备参数化的 Transact-SQL 语句并返回用于执行的语句“句柄”。sp_prepare 通过在表格格式数据流 (TDS) 包中指定 ID = 11 来调用。

Transact-SQL 语法约定

语法
--------------------------------------------------------------------------------


复制
sp_prepare handle OUTPUT, params, stmt, options
参数
--------------------------------------------------------------------------------

handle
SQL Server 生成的“已准备的句柄”标识符。handle 是一个具有 int 返回值的必需参数。

params
标识参数化语句。变量的 params 定义替换为语句中的参数标记。params 是一个必需参数,它需要 ntext、nchar 或 nvarchar 输入值。如果语句未参数化,则输入一个 NULL 值。

stmt
定义游标结果集。stmt 参数是必需的,它需要 ntext、nchar 或 nvarchar 输入值。

options
一个可选参数,它返回游标结果集列的说明。options 要求以下 int 输入值。


值 说明

0x0001 RETURN_METADATA

还可以看下这个贴子
http://sunzilong.blog.sohu.com/105423738.html

希望LZ成功。
APHY 2012-04-16
  • 打赏
  • 举报
回复
--执行存储过程
exec sp_prepare @p1 output,NULL,N'SELECT * FROM inventory',1


这是一个字符串参数,具体内容需要看存储过程里面,把这句话理解为一个参数就可以了~
leijunyuncyuyan 2012-04-16
  • 打赏
  • 举报
回复
declare @p1 int
set @p1=1
exec sp_prepare @p1 output,NULL,N'SELECT * FROM inventory',1
select @p1

declare @p1 int
set @p1=1
声明参数并赋值
exec sp_prepare @p1 output,NULL,N'SELECT * FROM inventory',1
select @p1
输出 @p1的值

,NULL,N'SELECT * FROM inventory',1
这种用法应该是比较少的。没必要太多理会。
nicholasvb 2012-04-16
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

SQL code

--声明变量
declare @p1 int

--赋值
set @p1=1

--执行存储过程
exec sp_prepare @p1 output,NULL,N'SELECT * FROM inventory',1

--查询输出
select @p1
[/Quote]
执行这个存储过程的作用是什么??
是执行SELECT * FROM inventory这条语句么?
APHY 2012-04-16
  • 打赏
  • 举报
回复

--声明变量
declare @p1 int

--赋值
set @p1=1

--执行存储过程
exec sp_prepare @p1 output,NULL,N'SELECT * FROM inventory',1

--查询输出
select @p1
快溜 2012-04-16
  • 打赏
  • 举报
回复
http://technet.microsoft.com/zh-cn/library/ff946077
simonxt 2012-04-16
  • 打赏
  • 举报
回复
和 sp_executesql 类似,
sp_executesql执行的时候每次都必须传入参数;
sp_prepare 多次执行的时候只需一次传入参数即可。

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧