首页 > 编程知识 正文

mysql视图和存储过程,数据库存储过程的优点

时间:2023-05-03 14:03:30 阅读:135965 作者:4636

数据库视图,存储过程:视图1 .视图概念2 .视图作用3 .创建、修改、显示和删除视图4 .介绍视图2,存储过程1 .概念2 .语法2 .调用语法3 .事例

一:视图1 .视图概念

视图是一个逻辑窗口,其中包含从数据库基本表中选择的数据,是基本表中某些行和列的数据的组合。 与基本表不同,视图是虚拟表。 仅存储视图的定义,而不存储视图中包含的数据。 这些数据仍然存储在原始的基本表中。

2 .视图作用1 .重用SQL语句。

2 .简化复杂的SQL操作,无需了解其查询细节。

3 .允许用户多角度查看同一数据。

4 .保护数据,提高安全性。 可以授予用户对表的特定部分的访问权限不是整个表的访问权限。

例如,如果一家公司需要与中国移动合作,获取用户数据,中国移动不可能透露用户的所有信息。 只能向那家公司提供用户的名字、手机号码。 中国移动查询用户姓名和手机号码的结果可以作为一个视图。 然后,该公司所需的所有数据都将从此视图中查询,以保护数据的安全。 )

5 .提供了一定程度的逻辑独立性。

3 .创建、修改、显示和删除视图1 .创建视图

更改用于创建信息类学生数据的视图createviewis _ studentasselectsno,Sname,SageFROM Student WHERE Sdept='信息类'2.视图

方式一、CREATE OR REPLACE VIEW IS_Student方式二、ALTER VIEW IS_Student 3.删除视图

DROP VIEW IS_Student 4.显示视图

视图结构DESC IS_Student 4.视图介绍应用场景:

****在多个位置使用相同的查询结果。

****用于此查询结果的SQL语句很复杂。 (现在,您可以创建此查询结果的视图,以便以后重用。)

举个简单的例子吧。

业务:查询姓张的学生姓名和专业姓名1 .常规咨询选择SELECT stuname、 要使用majornamefromstuinfosinnerjoinmajormons.' major id '=m.' id ' wheres.' stuname ' llaname2.视图,请先询问学生姓名和专业名称majornamefromstuinfosinnerjoinmajormons.' major id '=m.' id '; 然后,在调查小张这个学生和专业名的时候,只需要在这个视图中调查就可以了。 以后如果业务是姓赵的咨询,改成LIKE '赵% '就可以了,不需要重复写那么复杂的SQL文章。 SELECT * FROM v1 WHERE stuname LIKE '张% '; 实际上,这是将常用的SQL语句封装在一个视图中,以便于以后重用这些SQL语句。

二、存储过程和函数类似于java的方法。

1 .以预先编译的SQL语句的集合为概念,能够理解批量处理语句

好处:

1 .提高代码复用性

2 .简化操作

3 .减少编译次数,减少与数据库服务器的连接次数,提高效率

2 .语法CREATE PROCEDURE存储过程名称(参数列表) BEGIN存储过程本身(组合方法的SQL语句) END注意)1.参数列表包含三种参数模式名称参数类型示例: IN stuname VARCHAR(20 )参数模式。IN:此参数可以用作输入。 这意味着调用者必须传递值OUT: 参数可以用作输出。 这意味着参数可以用作返回值INOUT: 参数可以用作输入,也可以用作输出。 这意味着您必须同时传递值和返回值。 如果存储过程只有一条语句,则BEGIN END必须对存储过程中每个SQL语句的最后一个请求进行加分编号。 在存储过程结束时,可以使用DELIMITER重置语法。 调用DELIMITER结束标记2 .语法CALL存储过程名称(参数列表)。 3 .情况#1.将空参列表插入admin表中的五条记录

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。