中国语法理论,中国现代语法王力
241 2023-08-03
sqlserver存储过程语法?1、创建不带参数存储过程 create proc proc_get_student as select * from student;执行存储过程:exec proc_get_student;2、那么,sqlserver存储过程语法?一起来了解一下吧。
sqlserver存储过程的基本操作:
一、创建存储过程
1、语法格式:
createproc|procedurepro_name[{@参数数据类型陵穗}[=默认值][output],
{@参数数据类型}[=默认值][output],
....
]
as
SQL_statements
以上是尺兆卜最基本语法,举个简单的例子:
CREATEprocp_testas
selectretu=1
存储过程返回一个结果集:1
2、猜兆执行存储过程
EXECUTEProcedure_name''--存储过程如果有参数,后面加参数格式为:@参数名=value,也可直接为参数值value
例子调用结果:
3、删除存储过程
dropprocedureprocedure_name--在存储过程中能调用另外一个存储过程,而不能删除另外一个存储过程
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这两个语句。
1、 创建语法
createproc|procedurepro_name
[{@参数数据类型}[=默认值][output],
{@参数数据类型}[=默认值][output],
....
]
as
SQL_statements
2、 创建不辩毁带参数存储过程
--创建存储过程
if(exists(select*fromsys.objectswherename='proc_get_student'))
dropprocproc_get_student
go
createprocproc_get_student
as
select*fromstudent;
--调用、执行存储过程
execproc_get_student;
3、 修改存储过程
--修携敏备改存储过程
alterprocproc_get_student
as
select*fromstudent;
4、 带参存储过程
--带参存储过程
if(object_id('proc_find_stu','P')isnotnull)
dropprocproc_find_stu
go
createprocproc_find_stu(@startIdint,@endIdint)
as
select*fromstudentwhereidbetween@startIdand@endId
go
execproc_find_stu2,4;
5、 带通配符参数存储过程
--带通配符参数存储过程
if(object_id('proc_findStudentByName','P')isnotnull)
dropprocproc_findStudentByName
go
createprocproc_findStudentByName(@namevarchar(20)='%j%',@nextNamevarchar(20)='%')
as
select*fromstudentwherenamelike@nameandnamelike@nextName;
go
execproc_findStudentByName;execproc_findStudentByName'%o%','t%';
扩展资料:
SQL存储过程优点:
1、重复使用。
存储过程:
存储过程可以使得对数据库的管理、以及显示关于数据库及其用户信息的工作容易得多。存储过程是 SQL 语句和可选控态搜制流语句的预编译集合,以一个名称存储并作为一个单元处理。存储过程存储在数据库内,可由应用程序通过一个调用执行,而且允许用户声明变量、有条件执行以及其它强大的编程功能。
存储过程可包含程序流、逻辑以及对数据库的查询。它们可以接受参数、输出参数、返回单个或多个结果集以及返回值。
可以出于任何使用 SQL 语句的目的来使用存储过程,它具有以下优点:
1、可以在单个存储过程中执行一系列 SQL 语句。
2、可以从自己的存储过程内引用其它存储过程,这可以简化一系列复杂语句。
3、存储过程在创建时即在服务器上进行编译,所以执行起来比单个 SQL 语句快。
用户定义函数:
Microsoft SQL Server 2000 允许创建用户定义函数。与任何函数一样,用户定义帆岁历函数是可返回值的例程。根据所返回值的类型,每个用户定义函数可分成以下三个类别:
1、返回可更新数据表的函数
如果用户定义函数包含单个 SELECT 语句且该语句可更新,则该函数返回的表格格式结果也可以更新。
2、返回不可更新数据表的函数
如果用户定义函数包雀李含不止一个 SELECT 语句,或包含一个不可更新的 SELECT 语句,则该函数返回的表格格式结果也不可更新。
存储过程(stored procedure)有时也称为sproc。存储吵尺过程存储于数据库中而不是在单独的文件中,有输入参数、输出参数以及桥吵返回值等。
在数据库中,创建存储过程和创建其他对象的过程一样,除了它使用的AS关键字外。存储过敏碰侍程的基本语法如下:
CREATE PROCDUER|PROC
[
[
...]]
[WITH
RECOMPILE|ENCRYPTION|[EXECUTE AS {CALLER|SELF|OWNER|<'user name'>}]
[FOR REPLICATION]
AS
|EXTERNAL NAME
存储过程示例一:
执行存储过程方法一:
以上就是sqlserver存储过程语法的全部内容,第三步: 编译存储过程,在栏上按下执行按钮,如果没有错误,就编写成功了。第四步:调用:在sqlserver的语句查询框中,输入exec 存储过程名 参数,执行就可以了。内容来源于互联网,信息真伪需自行辨别。如有侵权请联系删除。