摘要: 1、必须返回一个值2、只能在表达式调用 带有参数的函数: IN: OUT: 阅读全文
posted @ 2016-11-26 16:14 Tomatoes 阅读(611) 评论(0) 推荐(0) 编辑
摘要: 创建时定义名称 2、可以被Oracle server 保存 3、可以被任何程序调用 4、可以被共享 存储过程: 1、不带参数的存储过程: 通过数据字典查看procedure信息: 带有参数的存储过程: 参数定义中,IN、OUT和IN OUT代表参数的三种不同模式: IN:当调用存储过程时,该模式的形 阅读全文
posted @ 2016-11-26 16:07 Tomatoes 阅读(1009) 评论(0) 推荐(0) 编辑
摘要: 由用户自己定义1、定义异常名称,类型exception2、举出异常(raise excepttion)3、捕获异常 非预定义异常,通过oracle ORA-XXXX错误代码,建立异常捕获! 获取others中错误代码和错误信息: sqlcode: oracle 错误代码 sqlerrm: oracl 阅读全文
posted @ 2016-11-26 16:00 Tomatoes 阅读(678) 评论(0) 推荐(0) 编辑
摘要: 如果在PLSQL块中没有做异常处理,在执行PLSQL块时,出现异常,会传递到调用环境,导致程序运行出错! 1.预定义异常:TOO_MANY_ROWS 在隐式游标处理时,select 返回行数超过一行 2.NO_DATA_FOUND 在访问数据时,没有发现数据。 3.ZERO_DIVIDE 除数为零 阅读全文
posted @ 2016-11-26 15:53 Tomatoes 阅读(284) 评论(0) 推荐(0) 编辑
摘要: cursor 需要用户先定义,在select时,可以用于处理多行记录 1、declare 声明一个游标 2、open cursor (隐式游标自动open) 3、fetch cursor 读取记录到变量(在select时,可以通过循环的方式读取多行记录) 4、判断游标是否为空(到达最后一行记录) 5 阅读全文
posted @ 2016-11-26 15:48 Tomatoes 阅读(453) 评论(0) 推荐(0) 编辑
摘要: 1.if判断: if-then-end if: if-then-else-end if: if-then-elsif-else-end if: 2.case分支判断: 在sql中使用case: decode 语句: 3.循环语句: 案例:在表中插入数据 ①loop基本循环 ②for 循环: ③whi 阅读全文
posted @ 2016-11-26 15:42 Tomatoes 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 隐式游标:一次只能返回一行结果(不需要定义,默认自动建立) 显式游标: 需要开发人员提前定义,可以通过循环的方式处理游标里的sql语句,返回多行结果 隐式游标的属性: sql%rowcout 统计在游标中处理的记录数 sql%found 如果在游标中能找到符合条件的一条记录,结果为true sql% 阅读全文
posted @ 2016-11-26 15:23 Tomatoes 阅读(1141) 评论(0) 推荐(0) 编辑
摘要: 1.Insert (在表中插入一行数据,并查看) 2.update:更新数据 3.delete: 删除数据 阅读全文
posted @ 2016-11-26 15:06 Tomatoes 阅读(616) 评论(0) 推荐(0) 编辑
摘要: 1.案例: 通过record类型处理一行多列的数据 复合变量--record 记录类型record:在一个变量中可以存储多个区域,每个区域可以是一个标量、记录或table (用于处理一行多列的信息) 2.通过%rowtype处理一行数据 3.案例:通过table类型变量处理一列多行的数据table 阅读全文
posted @ 2016-11-26 15:03 Tomatoes 阅读(1684) 评论(0) 推荐(0) 编辑
摘要: 1.无变量匿名快 2.有变量的匿名块,定义变量: 3.定义常量和变量并赋值: 4.在执行部分给变量赋值: 5.异常处理: 6.通过%type,保证变量的数据类型和表中字段的数据类型一致: 阅读全文
posted @ 2016-11-26 14:58 Tomatoes 阅读(444) 评论(0) 推荐(0) 编辑