zoukankan      html  css  js  c++  java
  • Oracle

                                            第8章 函数和过程
    8.4、过程(2019-06-15)
    1、存储过程向两张表中添加数据
    -- 第一张表是avator表 CREATE TABLE avatar( avatar_id NUMBER GENERATED AS IDENTITY CONSTRAINT avatar_kp PRIMARY KEY,--主键约束 avatar_name VARCHAR2(30) ); -- 第二张表是episode表 CREATE TABLE episode( episode_id NUMBER GENERATED AS IDENTITY CONSTRAINT episode_pk PRIMARY KEY, avatar_id NUMBER CONSTRAINT episode_nnl NOT NULL,--NOT NULL约束 episode_name VARCHAR2(30), CONSTRAINT episode_fkl FOREIGN KEY(avatar_id) REFERENCES avatar(avatar_id)--外键约束 ); --adding_contact过程显示了如何使用按值传递过程跨单个事务作用域管理多个DML语句: CREATE OR REPLACE PROCEDURE adding_avatar(pv_avatar_name VARCHAR2,pv_episode_name VARCHAR2) IS lv_avatar_id NUMBER; BEGIN SAVEPOINT all_or_none;--事务开始点 INSERT INTO avatar(avatar_name)VALUES(pv_avatar_name)RETURNING avatar_id INTO lv_avatar_id;--RETURNING INTO子句将标识列的值返回给局部变量 INSERT INTO episode(avatar_id,episode_name)VALUES(lv_avatar_id,pv_episode_name);--使用lv_avatar_id局部变量作为外键值 COMMIT;--提交 EXCEPTION--异常 WHEN OTHERS THEN ROLLBACK TO all_or_none;--回滚可能已经发生的事务 END; / --匿名块程序测试过程 BEGIN adding_avatar('Airbender','Episode 1'); END; /

      

  • 相关阅读:
    postman使用详解
    如何测试一个水杯
    selenium3(java)之屏幕截图操作
    C语言随机点名程序
    关于测试执行的一些总结与思考
    小议SQL数据插入
    BS架构和CS架构的区别
    Oracle伪列(ROWNUM)的使用
    Loadrunner学习资料
    【Apache运维基础(2)】主配置文件说明
  • 原文地址:https://www.cnblogs.com/hongwei2085/p/11026077.html
Copyright © 2011-2022 走看看