码迷,mamicode.com
首页 > 数据库 > 详细

SQLSever--视图与存储过程

时间:2017-12-12 23:54:54      阅读:210      评论:0      收藏:0      [点我收藏+]

标签:一个   开头   --   查看   安全   png   安全性   提前   put   

视图

要把视图看做是一张表,包含了一张表的部分数据或者多个表的综合数据,视图的使用和普通表一样;

视图建立并存储在服务器,有效减少网络数据流量,提高安全性;

视图中不存放数据,数据依然存放在视图引用的原始数据表中;

可以根据需求来提前创建不同的视图。

企业管理器创建视图:

技术分享图片技术分享图片技术分享图片

T-SQL创建视图:

USE DBName
go
IF EXISTS(SELECT * FROM sysobjects WHERE name=view_Name)
    DROP VIEW view_Name
CREATE VIEW view_Name
    AS
        <SELECT语句>

代码示例:

技术分享图片

存储过程

啥是存储过程?

就是事先存储好的SQL语句,放在数据库端,需要使用时直接调用存储过程就可以执行相应的SQL语句。存储过程可带参数,也可返回结果。

存储过程有啥优势呢?

执行速度更快;允许模块化设计;提高系统安全性;减少网络流量。

传统SQL语句与存储过程执行效率的对比:

技术分享图片

跟视图有啥区别呢?

视图仅仅用来查询,而存储过程可以用来增删查改;视图是数据库的一张虚拟表,可以像表一样使用,而存储过程本质来说还是在执行SQL语句。

如何查看存储过程?

技术分享图片

存储过程分类:

三种:系统存储过程、扩展存储过程、自定义存储过程

系统存储过程:由“sp_"开头,由系统定义与维护,需要学会使用。

技术分享图片

扩展存储过程:“xp_”开头,以DLL形式单独存在,至今不知道有啥鸟用!

自定义存储过程:根据需要自定义,类似C#里面的“方法”的存在。

存储过程调用方法:

EXECUTE    过程名 【参数】
简写:EXEC    过程名 【参数】

代码示例:

技术分享图片

重点!自定义存储过程!!!

1 use DB
2 go
3 create procedure(缩写:proc) 存储过程名
4                 @参数1  数据类型=默认值  OUTPUT
5                 ……
6                 @参数n   数据类型=默认值  OUTPUT    
7 as
8                  SQL语句
9 go

自定义存储过程的内容全在上面规范里面,其中:

第3行,procedure可以缩写为proc;

第4~6行的参数定义可有可无,若有,在调用存储过程时需要一起传递过来;默认值可有可无,若有,在调用存储过程时可以不传递参数值;OUTPUT关键字可有可无,若有在调用时需要有一个变量来接受它的返回值

技术分享图片技术分享图片

 

SQLSever--视图与存储过程

标签:一个   开头   --   查看   安全   png   安全性   提前   put   

原文地址:http://www.cnblogs.com/EasonDongH/p/8030035.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!