sql存储过程编写
要到达你的要求,在存储过程中必须使用动态SQL语句。
一个简化的例子:
createprocereMyDynamicSQL
@tblwherenvarchar(200)--a==aora==xxx
as
begin
declare@sqlnvarchar(max)
--动态拼接sql语句
set@sql=N'select*from[表一]where'+@tblwhere
--执行
executesp_executesql@sql
end
⑵ 创建存储过程sql语句
1)过程名
存储过程的名称,默认在当前数据库中创建。若需要在特定数据库中创建存储过程,则要在名称前面加上数据库的名称,即db_name.sp_name。
需要注意的是,名称应当尽量避免选取与MySQL内置函数相同的名称,否则会发生错误。
2)过程参数
存储过程的参数列表。其中,<参数名>为参数名,<类型>为参数的类型(可以是任何有效的MySQL数据类型)。当有多个参数时,参数列表中彼此间用逗号分隔。存储过程可以没有参数(此时存储过程的名称后仍需加上一对括号),也可以有1个或多个参数。
MySQL存储过程支持三种类型的参数,即输入参数、输出参数和输入/输出参数,分别用IN、OUT和INOUT三个关键字标识。其中,输入参数可以传递给一个存储过程,输出参数用于存储过程需要返回一个操作结果的情形,而输入/输出参数既可以充当输入参数也可以充当输出参数。
⑶ 如何编写存储过程
//创建存储过程
CREATE PROCEDURE userData(
IN id INT
)
BEGIN
SELECT * from userdata WHERE userflag = id;
END;
其中IN是传进去的变量;
drop procere userData;//销毁这个存储过程。
call userData(2) //调用存储过程。
(3)sql存储过程编写扩展阅读:
sql中的存储过程及相关介绍:
CREATE PROCEDURE [拥有者.]存储过程名[;程序编号]
[(参数#1,…参数#1024)]
[WITH
{RECOMPILE | ENCRYPTION | RECOMPILE, ENCRYPTION}
]
[FOR REPLICATION]
AS 程序行
其中存储过程名不能超过128个字。每个存储过程中最多设定1024个参数
(SQL Server 7.0以上版本),参数的使用方法如下:
@参数名数据类型[VARYING] [=内定值] [OUTPUT]。
每个参数名前要有一个“@”符号,每一个存储过程的参数仅为该程序内部使用,参数的类型除了IMAGE外,其他SQL Server所支持的数据类型都可使用。
[内定值]相当于我们在建立数据库时设定一个字段的默认值,这里是为这个参数设定默认值。[OUTPUT]是用来指定该参数是既有输入又有输出值的,也就是在调用了这个存储过程时,如果所指定的参数值是我们需要输入的参数。
同时也需要在结果中输出的,则该项必须为OUTPUT,而如果只是做输出参数用,可以用CURSOR,同时在使用该参数时,必须指定VARYING和OUTPUT这两个语句。
参考资料来源:网络-储存过程
⑷ 用SQL语句创建存储过程
--1、创建存储过程--
if
exists
(select
*
from
sysobjects
where
name='info1')
drop
procere
info1
go
create
procere
info1
@sname
varcher(20),
as
begin
declear
@xinxi
varcher(20)
set
@xinxi='select
学号,姓名,出身日期,系别(注,列名自己设置)
from
student
where
姓名=@sname'
print'@xinxi';
end
--调用存储过程1--
exec
info1
@sname=姓名
后面的自己参考,可以写出来
⑸ 使用SQL语句创建存储过程
使用SQL语句创建存储的具体过程如下:
1、首先,打开企业管理器,选择【工具】-【查询分析器】:
⑹ 如何创建SQL存储过程
步骤如下:
1.
在对象资源管理器中,连接到某个数据库引擎实例,再展开该实例。
2.
展开“数据库”、sql
server存储过程所属的数据库以及“可编程性”。
3.
右键单击“存储过程”,再单击“新建存储过程”。
4.
在“查询”菜单上,单击“指定模板参数的值”。
5.
在“指定模板参数的值”对话框中,“值”列包含参数的建议值。接受这些值或将其替换为新值,再单击“确定”。
6.
在查询编辑器中,使用过程语句替换
SELECT
语句。
7.
若要测试语法,请在“查询”菜单上,单击“分析”。
8.
若要创建sql
server存储过程,请在“查询”菜单上,单击“执行”。
9.
若要保存脚本,请在“文件”菜单上,单击“保存”。接受该文件名或将其替换为新的名称,再单击“保存”。
⑺ 如何在sql创建一条插入数据的存储过程
1、首先需要打开SQL Server Managment管理工具,新建一个表。
⑻ 用SQL怎样编写一个存储过程
CREATE
PROCEDURE
[dbo].[usp_InsertTool]
@T_Name
nvarchar(50),
@T_OldPrice
money,
@T_TypeID
smallint,
@T_CreateTime
smalldatetime,
@T_IsValid
bit,
@T_
Description
nvarchar(500),
@T_SoldCount
bigint,
@T_ID
int
OUTPUT
AS
--SET
NOCOUNT
ON
INSERT
INTO
[dbo].[NA.Tool]
(
[T_Name],
[T_OldPrice],
[T_TypeID],
[T_CreateTime],
[T_IsValid],
[T_Description],
[T_SoldCount]
)
VALUES
(
@T_Name,
@T_OldPrice,
@T_TypeID,
@T_CreateTime,
@T_IsValid,
@T_Description,
@T_SoldCount
)
--SET
@T_ID
=
SCOPE_IDENTITY()
SELECT
SCOPE_IDENTITY()
这就是一个插入数据并返回记录ID的
存储过程
,各种类型的参数都给你用到了
⑼ sql server 2008 怎么编写存储过程
第一步:点击数据库下的“可编程性”,选择“存储过程”,点击鼠标右键,选择“新建存储过程”
第二步:在create
PROCEDURE
后
输入存储过程的名字,紧跟着的就是定义存储过程的参数,接下来就可以去编写自己所需要组装的存储过程语句了
第三步:
编译存储过程,在工具栏上按下执行按钮,如果没有错误,就编写成功了。
第四步:调用:在sqlserver的语句查询框中,输入exec
存储过程名
参数,执行就可以了。
基本语法格式如下:中括号带的是可选项
create
proc
|
procere
pro_name
[{@参数数据类型}
[=默认值]
[output],
{@参数数据类型}
[=默认值]
[output],
....
]
as
begin
SQL_statements
--业务处理
end