oracle总结8

本文介绍了如何在Oracle数据库中创建一个名为pkg_orders的包,该包包含用于操作ORDERS表的公共过程和函数。包括验证客户存在的私有函数fun_valid_cust,添加订单的pro_add_order过程,更新交付日期的pro_update_shipdate过程,获取订单信息的fun_get_info函数,以及删除订单的pro_delete_order过程。每个过程和函数都有相应的错误处理逻辑,确保数据的完整性和一致性。
摘要由CSDN通过智能技术生成
建立用于操作ORDERS表的包pkg_orders,并调用该包的公用过程和函数。实现的规则:
1.定义私有函数fun_valid_cust,检查客户号是否在CUSTOMER表中存在;如果客户号存在,则返回TRUE,否则返回FALSE。
2.定义公用过程pro_add_order,根据输入的订单号,预定日期,客户编号,交付日期,订单总价为ORDERS表增加订单。如果订单存在,则显示自定义错误信息“ORA-20001:the order already exist,please check order no.”,如果客户号不存在,则显示自定义错误信息,“ORA-20002:the customer is not exist,please check customer no.”,如果交付日期小于预定日期,则显示自定义错误信息“ORA-20003,ship_date must large order_date .”
3.定义公用过程pro_update_shipdate,根据输入的订单号和交付日期,更新特定订单的交付日期。如果订单不存在,则显示自定义错误信息“ORA-20004,please input correct order no.”,如果交付日期小于预定日期,则显示自定义错误信息“ORA-20003,ship_date must large order_date .”
4.定义公用函数fun_get_info,根据输入的订单号返回客户名和订单总价。如果订单不存在,则显示自定义错误信息“ORA-20004,please input correct order no.”,
5.定义公用过程pro_delete_order,根据输入的订单号取消特定订单。如果订单不存在,则显示自定义错误信息“ORA-20004,please input correct order no.”,
 
 
-----
表设计字段
 
ORDERS表字段为order_id, order_date, customer_id, ship_date, total;数据来自oe.orders,主键为order_id
CUSTOMER表字段为customer_id, cust_first_name, cust_last_name, date_of_birth, marital_status, cust_email,city_name数据来自oe.customers,主键为customer_id
 
ORDERS表与CUSTOMER为多对1关系,需要用建立主外键约束关系。
 
======解锁oe
SQL> alter user oe account unlock;
 
 
SQL> alter user oe identified by oe;
 
  <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值