sql存储过程(sql存储过程怎么写)

本篇文章给大家谈谈sql存储过程,以及sql存储过程怎么写对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

在SQL中存储过程的一般语法是什么?

1、 创建语法

create proc | procedure pro_name

[{@参数数据类型} [=默认值] [output],

{@参数数据类型} [=默认值] [output],

....

]

as

SQL_statements

2、 创建不辩毁带参数存储过程

--创建存储过程

if (exists (select * from sys.objects where name = 'proc_get_student'))

drop proc proc_get_student

go

create proc proc_get_student

as

select * from student;

--调用、执行存储过程

exec proc_get_student;

3、 修改存储过程

--修携敏备改存储过程

alter proc proc_get_student

as

select * from student;

4、 带参存储过程

--带参存储过程

if (object_id('proc_find_stu', 'P') is not null)

drop proc proc_find_stu

go

create proc proc_find_stu(@startId int, @endId int)

as

select * from student where id between @startId and @endId

go

exec proc_find_stu 2, 4;

5、 带通配符参数存储过程

--带通配符参数存储过程

if (object_id('proc_findStudentByName', 'P') is not null)

drop proc proc_findStudentByName

go

create proc proc_findStudentByName(@name varchar(20) = '%j%', @nextName varchar(20) = '%')

as

select * from student where name like @name and name like @nextName;

go

exec proc_findStudentByName;exec proc_findStudentByName '%o%', 't%';

扩展资料:

SQL存储过程优点:

1、重复使用。存储过程可以重复使用,从而可以减少数据库开发人员的工作量。

2、减少网络流量。存储过程位于服务器上,调用的时候只需要传递存储过程的名称以及参数就可以了,因此降低了网络传输的数据量。

3、安全性。参数化的存储过程可以防止SQL注入式攻击,而且可以将Grant、Deny以及Revoke权限应用拿销于存储过程。

参考资料来源:百度百科—存储过程

SQL中存储过程是干什么用的?

存储过程是在大型数据库系统中,一组为了完成特燃液定功能的SQL 语句集,它存储在数据库中,一次编译后永久有效,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象。

数据库存储过程的实质就是部署在数据库端的一组定义代码以及SQL。将常用的或很复杂的工作,预先用SQL语句写好并用一旁坦个指定的名称存储皮启物起来,那么以后要叫数据库提供与已定义好的存储过程的功能相同的服务时,只需调用execute,即可自动完成命令。

每个参数名前要有一个“@”符号,每一个存储过程的参数仅为该程序内部使用,参数的类型除了IMAGE外,其他SQL Server所支持的数据类型都可使用。

扩展资料:

SQL中存储过程优点:

1、重复使用。存储过程可以重复使用,从而可以减少数据库开发人员的工作量。

2、减少网络流量。存储过程位于服务器上,调用的时候只需要传递存储过程的名称以及参数就可以了,因此降低了网络传输的数据量。

3、安全性。参数化的存储过程可以防止SQL注入式攻击,而且可以将Grant、Deny以及Revoke权限应用于存储过程。

4、存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度。

参考资料来源:百度百科-存储过程

在SQL中存储过程分为哪五类

1、目录存储过程

例如:sp_columns返回当前环境中可查询的指定表或视图的列信息。

sp_tables返回当前环境下可查询的对象的列表(任何可出现在FROM子句中的对象)。

2、复制类存储过程

例如:sp_addarticle创建项目并将其添加到发布中。此存储过程在发布服务器的发布数据库上执行。

3、安全管理类存储过程

例如:sp_addrole在当前数据库创建新的Microsoft SQL Server角色。

sp_password添加或更改Microsoft SQL Server登录的密码。

4、分布式查询存储过程

例如:sp_foreignkeys返回引用主键的外键,这些主键在链接服务器中的表上。

sp_primarykeys返回指定远程表的主键列,每个键列占一行。

5、扩展存储过程

例如:xp_sendmail向指定的收件人发送邮件和查询结果集附件。

xp_startmail启动SQL邮件客户端会话。

存储过程的特点

1、存储过程在服务器端运行,执行速度快。

2、存储过程执行一次后,其执行驻留在高速缓冲存储器,在以后的操作中,只需从高速缓冲存储器中调用已编译好的二进制嫌毁空代码执行,提高了系统性能。

3、确保数据库的安全。使用存储过程可以完余慎成所有的数据库操作。

4、降低网络负载,提高效率。

5、可以接受用户参数,亦可返回芹瞎参数。

6、作为一种安全机制来充分利用:通过对执行某一存储过程的权限进行限制,能够实现对相应的数据的访问权限的限制,避免了非授权用户对数据的访问,保证了数据的安全。

[img]

关于sql存储过程和sql存储过程怎么写的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

标签列表