- 15
- 0
- 约1.96万字
- 约 19页
- 2016-12-03 发布于贵州
- 举报
Oracle数据库学习总结
Oracle数据库学习总结
对于一位程序员来说并不需要完全掌握Oracle的所有知识,毕竟自己不是DBA。在日常开发中也用不到那些命令和工具,但是有些知识点我们还是必须得熟练的掌握它们。比如:一些基本的DDL和DML语句,存储过程,函数,视图,触发器,序列,游标,自定义类型和包。
下面我就把这段时间里学习Oracle获得的知识点罗列出来,一是为了方便以后查阅,二是为了和搭档交流学习经验。
要适应的一些细节
从Sql Server转到Oracle进行数据库编程,第一道门槛就是语法问题。很多很多的问题都是因为语法而产生的,现将它们统统集合起来并将它们一网打尽之。
参数赋值
Sql Server
Set @parameter=5 --加不加分号无所谓,这里是用‘=‘号进行赋值的
Oracle
Parameter:=5;--必须加分号,并使用加‘:‘的’=‘号进行赋值的
PL结构。在Sql Server中,采用的是批处理执行任务的方式,所以可以将多条sql语句选中批量执行,而不用顾忌要在专门的地方声明变量,在专门的地方进行逻辑编码。在Oracle中采用的是PL编程方式,必须在专门的地方声明变量,在专门的地方进行流程编码,经典的PL如下:
Declare
--这里是专门用来定义变量的
Begin
--这里是专门用来进行程序编码的
End;--这里必须加分号
If语句
If ***条件 then
Else if ***条件 then
Else
End if;--这里要加分号
Case语句
Case
When ***条件 then
When ***条件 then
When ***条件 then
Else
End Case;--这里要加分号
还可以写成:
Case 常量 -- 一个字符变量
When ‘A‘ then
When ‘B‘ then
When ‘C‘ then
Else
End Case;--这里要加分号
循环结构,要达到循环在Oracle中有3种方式,各有各的好处,你懂的。它们分别如下:
第一种
Loop
****
Exit when 退出条件;
End loop;--要加分号
第二种
While 条件 loop
****
End loop;--要加分号
第三种
For I in 1..100 loop
***
End loop; --要加分号
PL结构中的错误处理
就像C#中的Try{} Catch{}语句块 能捕获错误。写几个例子:
HelloWorld级别的错误抛出例子
declare
stu_info student%rowtype;
cursor stu_cursor is select * from student;
begin
select * into stu_info from student;
exception
when TOO_MANY_ROWS then
dbms_output.put_line(行太多);
when others then
dbms_output.put_line(未知错误 错误号:||sqlcode||错误信息 ||sqlerrm);
end;
手动抛出错误,类似于c#中的throw
declare
stu_info student%rowtype;
cursor stu_cursor is select * from student;
begin
Raise_Application_Error(-20001,打酱油的错误);--显示抛出错误
exception
when TOO_MANY_ROWS then
dbms_output.put_line(行太多);
when others then
dbms_output.put_line(未知错误 错误号:||sqlcode||错误信息 ||sqlerrm);
end;
自定义一个错误,并把它手动抛出
declare
my_error Exception;
pragma Exception_Init(my_error,-29999);--这里很重要哦
begin
raise my_error;--抛出错误
exception
when others then
dbms_output.put_line(未知错误 错误号:||sqlcode||错误信息 ||sqlerrm);
end;
Record类型
Oracle中的Record类型类似于c语言中的结构体,主要用来接收Select语句或游标中返回的
您可能关注的文档
- NC开发经验总结【V10】【单据部分】.doc
- OpenCart_1.5.x_二次开发手册.doc
- Oracle 高效SQL编程指南 V1.1.doc
- OH5000调试指导书.doc
- Oracle11g学习笔记一.doc
- ORACLE常用函数功能演示.doc
- Ovhuov教师个人业务档案.doc
- PDCA循环在急诊科工作中的应用.doc
- PEP小学英语三年级上册竞赛试题.doc
- OES系统-学生中心-毕业论文写作平台操作说明(通用版)100225.doc
- 2025年全国演出经纪人员资格认定考试试卷带答案(研优卷).docx
- 2025年全国演出经纪人员资格认定考试试卷完整版.docx
- 2025年全国演出经纪人员资格认定考试试题库及完整答案.docx
- 2025年全国演出经纪人员资格认定考试试卷完美版.docx
- 2025年全国演出经纪人员资格认定考试试卷含答案(实用).docx
- 2025年全国演出经纪人员资格认定考试试卷及答案(各地真题).docx
- 2025年下半年内江市部分事业单位公开考试招聘工作人员(240人)备考题库附答案.docx
- 2025年全国演出经纪人员资格认定考试试卷及答案1套.docx
- 2025年下半年四川成都市郫都区面向社会引进公共类事业单位人员2人备考题库最新.docx
- 2025年下半年内江市部分事业单位公开考试招聘工作人员(240人)备考题库附答案.docx
最近下载
- 2021届高考物理三轮冲刺重难点训练:磁场(解析版).pdf VIP
- IDC数据时代2025白皮书_数据时代2025资源The Digitization of the World From Edge to Core.pdf VIP
- 《民航服务心理学(第2版)》项目二(改).pptx
- 民航服务心理学(第2版)严光玉课后习题答案.pdf VIP
- 《民航服务心理学(第2版)》课程标准.docx VIP
- 高考物理压轴题.pdf VIP
- 【高考真题】2023年新高考物理真题试卷——湖南卷(含答案).pdf VIP
- 欧洲规范-NF P18-561-中文版.pdf VIP
- 调相机系统构成及原理培训教材(课件49张).ppt VIP
- 2024届浙江省杭州市高考一轮复习培优提升卷(一)语文试卷含答案.docx VIP
原创力文档

文档评论(0)