数据库高级应用幻灯片.ppt

上传人:石*** 文档编号:47511039 上传时间:2022-10-02 格式:PPT 页数:10 大小:610KB
返回 下载 相关 举报
数据库高级应用幻灯片.ppt_第1页
第1页 / 共10页
数据库高级应用幻灯片.ppt_第2页
第2页 / 共10页
点击查看更多>>
资源描述

《数据库高级应用幻灯片.ppt》由会员分享,可在线阅读,更多相关《数据库高级应用幻灯片.ppt(10页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、数据库高级应用第1页,共10页,编辑于2022年,星期六视图视图 使用CREATE VIEW或ALTER VIEW创建或更改视图。使用DROP VIEW销毁视图。ALTER ALGORITHM=UNDEFINED|MERGE|TEMPTABLE VIEW view_name(column_list)AS select_statement WITH CASCADED|LOCAL CHECK OPTION视图视图:是一个虚表。它实际上就相当于相关的查询语句。说之为虚表,因为在物理上,视图不像 表一样占用物理空间。视图的作用,就是为了方便查询。同时,它也增加了软件的安全性。视图定义服从下述限制:SE

2、LECT语句不能包含FROM子句中的子查询。SELECT语句不能引用系统或用户变量。SELECT语句不能引用预处理语句参数。在存储子程序内,定义不能引用子程序参数或局部变量。在定义中引用的表或视图必须存在。但是,创建了视图后,能够舍弃定义引用的表或视图。在定义中不能引用TEMPORARY表,不能创建TEMPORARY视图。在视图定义中命名的表必须已存在。不能将触发程序与视图关联在一起。第2页,共10页,编辑于2022年,星期六视图视图示例:1、创建一个视图:、创建一个视图:create view news_viewasselect title as 新闻标题 from news where i

3、d 2;2、视图的使用:、视图的使用:(视图当作表来使用,主要用来查询)select*from news_view上面查询等效于select title as 新闻标题 from news where id 2;第3页,共10页,编辑于2022年,星期六过程过程什么(存储)过程?什么(存储)过程?类似与我们编程时的函数,将常用的或很复杂的工作,预先用SQL语句写好并用一个指定的名称存储起来,那么以后要叫数据库提供与已定义好的存储过程的功能相同的服务时,只需调用execute,即可自动完成命令,跟函数调用差不多!存储过程的优点:存储过程的优点:1.存储过程只在创造时进行编译,以后每次执行存储过程

4、都不需再重新编译,而一般SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度。2.当对数据库进行复杂操作时(如对多个表进行Update,Insert,Query,Delete时),可将此复杂操作用存储过程封装起来与数据库提供的事务处理结合一起使用。3.存储过程可以重复使用,可减少数据库开发人员的工作量 4.安全性高,可设定只有某此用户才具有对指定存储过程的使用权创建:创建:CREATE PROCEDURE 过程名(过程参数,.)特性.过程体过程参数:IN|OUT|INOUT 参数名 参数类型.DROP PROCEDURE sp_name;删除存储过程。使用:show proce

5、dure status 查看已创建的过程信息。第4页,共10页,编辑于2022年,星期六过程过程CREATE PROCEDURE 过程名(过程参数,.)特性.过程体过程参数过程参数:IN|OUT|INOUT 参数名 参数类型函数参数:参数名 参数类型返回类型:有效的MySQL数据类型即可特性特性:LANGUAGE SQL|NOT DETERMINISTIC|CONTAINS SQL|NO SQL|READS SQL DATA|MODIFIES SQL DATA|SQL SECURITY DEFINER|INVOKER|COMMENT string过程体过程体:格式如下:BEGIN有效的SQL语

6、句END 第5页,共10页,编辑于2022年,星期六过程过程创建方法:创建方法:creaateprocedureproc()beginupdatenewstime=now();select*fromnews;end;调用方法:调用方法:callproc();这里将得到一个结果集。第6页,共10页,编辑于2022年,星期六事务事务事务的概念?事务的概念?事务是不可分隔的一个工作单元。原子性原子性(ATOMICITY):(ATOMICITY):一个事务要被完全的无二义性的做完或撤消。在任何操作出现一个错误的情况下,构成事务的所有操作的效果必须被撤消,数据应被回滚到以前的状态。一致性一致性(CONS

7、ISTENCY):(CONSISTENCY):一个事务应该保护所有定义在数据上的不变的属性(例如完整性约束)。在完成了一个成功的事务时,数据应处于一致的状态。换句话说,一个事务应该把系统从一个一致-状态转换到另一个一致状态。举个例子,在关系数据库的情况下,一个一致的事务将保护定义在数据上的所有完整性约束。隔离性隔离性(ISOLATION):(ISOLATION):在同一个环境中可能有多个事务并发执行,而每个事务都应表现为独立执行。串行的执行一系列事务的效果应该同于并发的执行它们。这要求两件事:在一个事务执行过程中,数据的中间的(可能不一致)状态不应该被暴露给所有的其他事务。两个并发的事务应该不

8、能操作同一项数据。数据库管理系统通常使用锁来实现这个特征。持久性持久性(DURABILITY):(DURABILITY):一个被完成的事务的效果应该是持久的。第7页,共10页,编辑于2022年,星期六事务事务在在MysqlMysql中,默认地事务是自动提交的。中,默认地事务是自动提交的。SET AUTOCOMMIT=1(SET AUTOCOMMIT=1(默认默认)我们可以通过更改:我们可以通过更改:SET AUTOCOMMIT=0 SET AUTOCOMMIT=0,表示需手动提交事务。,表示需手动提交事务。COMMITCOMMIT 提交来存储你的更改到磁盘上提交来存储你的更改到磁盘上ROLLB

9、ACKROLLBACK 回滚,取消方才的操作。回滚,取消方才的操作。第8页,共10页,编辑于2022年,星期六锁锁LOCK TABLES可以锁定用于当前线程的表。如果表被其它线程锁定,则造成堵塞,直到可以获取所有锁定为止。UNLOCK TABLES可以释放被当前线程保持的任何锁定。当线程发布另一个LOCK TABLES时,或当与服务器的连接被关闭时,所有由当前线程锁定的表被隐含地解锁。表锁定只用于防止其它客户端进行不正当地读取和写入。保持锁定(即使是读取锁定)的客户端可以进行表层级的操作,比如DROP TABLE。如:LOCK TABLE news READ;表示对news表进行只读锁定,此时其它线程不能删除、修改、插入。直到解锁为止。UNLOCK TABLE;解锁。第9页,共10页,编辑于2022年,星期六Php调用过程调用过程$conn=mysql_connect(localhost:3300,root,0000,1,131072);mysql_select_db(ccopen);$rs=mysql_query(call proc33();$arr=mysql_fetch_array($rs);print_r($arr);第10页,共10页,编辑于2022年,星期六

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com