网站大量收购独家精品文档,联系QQ:2885784924

电子商务数据库技术全书教学课件电子教案.ppt

电子商务数据库技术全书教学课件电子教案.ppt

  1. 1、本文档共589页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
完整版课件全书课件整套课件最全课件完整版教案全书电子教案整套电子教案全书电子教案

2.JDBC的主要功能 简单地说,JDBC能完成下列功能:首先和一个数据库所在的DBMS建立连接;然后向DBMS发送SQL语句;最后处理DBMS返回的结果。当程序调用JDBC接口访问数据库的时候,JDBC驱动程序负责将这些程序调用转化为符合底层数据库交互协议的信息,并将这些信息发送给底层数据库管理系统,由底层数据库管理系统执行相应的操作,最后处理返回的结果。 3. JDBC的驱动程序类型 根据JDBC的驱动程序的实现机制,可以将JDBC的驱动程序分成4种类型: ⑴ JDBC-ODBC桥。 图9-26 JDBC-ODBC桥的原理图 ⑵ JDBC驱动程序直接访问数据库。 图9-27 JDBC驱动程序直接访问数据库的原理图 UPDATE BOOKSET DiscountPrice = Price * 0.7 WHERE PublisherID = PublisherID; ELSE UPDATE BOOK SET DiscountPrice = Price * 0.75 WHERE PublisherID = PublisherID; END CASE;END ; 6.循环结构 ⑴ 标准的WHILE 循环结构 WHILE 条件 DO 语句体 END WHILE; ⑵ 标准的REPEAT循环结构 REPEAT 语句体 UNTIL 条件 END REPEAT; 7. 在存储过程中使用游标 【例9.4】 创建一个带游标的存储过程,输出用户的订单号。 CREATE PROCEDURE USER_ORDER ( IN UserID CHAR(6), OUT OrderID CHAR(9) ) BEGIN ATOMIC DECLARE cur_order INSENSITIVE CURSOR FOR SELECT OrderID FROM ORDERS WHERE UserID= UserID FOR READONLY; --定义游标,生成游标所对应的结果集 OPEN cur_order --打开游标 FETCH NEXT cur_order INTO :OrderID; --将游标值放入变量中 EXEC SQL CLOSE cur_order END 9.2 触发器 9.2.1 触发器的概念 【定义9.2】触发器是数据库模式的一个元素,能够由系统自动执行对数据库中对象的一些操作。也称为ECA规则(event-condition-action),即事件—条件—规则。 触发器的结构如下: ON 事件 IF 前提条件 THEN 行为 在传统和新的数据库技术中,触发器有以下的作用: ⑴ 维护数据库中数据的参照完整性。 ⑵ 执行更复杂的约束。 ⑶ 用于业务规则的设定。 ⑷ 在主动数据库中可以用来监控物理对象的状态信息,提高系统的反应能力。 ⑸ 对异常处理的模块化。 9.2.2 触发器的语法结构 本节主要介绍SQL:1999标准中的通用语法,这有利于理解触发器的工作原理和结构。不同的数据库厂商在自己的产品中都包含了各自的触发器,具体应用可以在标准的基础上参照不同产品的参考手册。 ⑴ 首先用trigger-name确定触发器的名称。 ⑵ 利用BEFORE或AFTER关键字定义BEFORE或AFTER触发器,确定系统在事件发生之前还是之后检查由WHEN确定的前提条件。 ⑶ 触发事件。 ⑷ 目标表。 ⑸ 触发器的粒度。 ⑹ 触发的前提条件。 ⑺触发器执行的语句体。 ⑻ REFERENCING子句。 在触发器定义中需要注意的几点: ① BEFORE触发器。 【例9.5】设计一个触发器,如果某本书在订单表中的订购量大于图书的库存量,不能接受新的订单。 解:可以设计一个触发器,它监视插入到订单细节表ORDERDETAIL (OrderID, BookID, Quantity)中的每个元组,如果计算超过这本书的库存量则拒绝插入操作。 CREATE TRIGGER trigger-StockCheck BEFORE INSERT ON ORDERDETAIL REFERENCING NEW AS T FOR EACH ROW WHEN ((SELECT COUNT(*) FROM ORDERDETAIL O WHERE O.OrderID=T.OrderID AND O. BookID=T. BookID ) = (SELECT TotalNum FROM BOOK B WHERE B. BookID= T

您可能关注的文档

文档评论(0)

你找对了 + 关注
实名认证
内容提供者

正版课件均可编辑 注意:其它人很多盗版P P T都是图片形式,买到请直接投诉退款!

1亿VIP精品文档

相关文档