oracle数据开发

编程结构:  declare

[定义变量]

begin

[逻辑代码]

exception

[捕获异常]

end;

实例:

declare

a number:=1;

b number:=2;

c number;

begin

c:=(a*b)/(a+b);

dbms_output.put_line(c);

exception

when zero_divide then

dbms_output.put_line('除数不能为0');

end;

变量:

长度不能超过30个字符不能含有空格,表的字段长度也是;

由字母、0-9数字、下划线、美元符号‘$’ 以及#号组成

必须由字母开头

关键字能作为变量,如if 等

基础数据类型

实例:

param number default 104;

%type变量

%type是声明一个与指定的列名相同的数据类型;

优点:用户不必查看表中的数据类型,即可确保数据类型与范围与表中的数据类型一致;

如果对表中的数据结构修改,对编写的程序没有影响,程序的变量会随结构变化而变化

缺点:执行的时候解析%type 需要查询数据词典,确定数据类型,可能会对性能产生影响

实例:

var_name emp.ename%type;

复合变量

%rowtype变量;

%rowtype声明一个与指定的表名相同的行类型;相当于定义一个和指定表相同的数据结构踢类型

保存一行数据

实例:

row_employee emp%rowtype

自定义变量:

声明格式

type record_name record(

file_name date_type [not null] [:=default_value],

...

file_namen date_type [not null] [:=default_value]

)

根据用户需求定制数据变量,类似C语言的结构体

实例:

type user_type record(

user_no number,

user_name nvarchar2(10)

);

user user_type;

分支

if..then.. 语句

if 条件 then

处理语句

end if;

if..then.. 语句

if 条件 then  处理语句  else 处理语句 end if;

if..then.. 语句

if 条件 then 处理语句

elsif 处理语句

else

处理语句

end if;

case条件语句

case

when 条件 then 处理语句;

when 条件 then 处理语句;

when 条件 then 处理语句;

end;

if var_param > 0 then

dbms_output.put_line('var_param 的值大于0');

end if;

if var_param > 0 then

dbms_output.put_line('var_param 的值大于0');

else dbms_output.put_line('var_param 的值小于或等于0');

end if;

if var_param = 0 then

dbms_output.put_line('var_param 的值等于0');

elsif var_param = 1 then

dbms_output.put_line('var_param 的值等于1');

else

dbms_output.put_line('var_param 的值不等于1或0');

end if;

case

when var_param = 0 then dbms_output.put_line('var_param 的值等于0');

when var_param = 1 then dbms_output.put_line('var_param 的值等于1');

when var_param = 2 then dbms_output.put_line('var_param 的值等于2');

end

循环语句

loop

处理语句

exit when 退出循环条件

end loop

while 循环语句

while 循环条件

loop

处理语句

end loop;

for循环

for 变量 in 变量集合 loop

处理语句

end loop;

loop

var_param:=var_param+1 --自增

exit when var_param>10 --当var_param的值大于10时推出循环

end loop;

while var_param <= 10 --当var_param的值小于等于10时进入循环

var_param:=var_param+1 --自增

end loop;

for var_param in 1..10 --当var_param的值小于等于10时进入循环

loop

var_param:=var_param+1 --自增

end loop;

oracle编程基本语法,oracle编程基础语法相关推荐

  1. MarkDown语法浅析:基础语法篇

    本篇学习笔记简述MarkDown基础语法.掌握了"MarkDown基本语法+简单HTML5标签"的综合运用,就可以把CSDN博文搞得美美哒✌ (本文获得CSDN质量评分[91]) ...

  2. scala函数式编程(二) scala基础语法介绍

    上次我们介绍了函数式编程的好处,并使用scala写了一个小小的例子帮助大家理解,从这里开始我将真正开始介绍scala编程的一些内容. 这里会先重点介绍scala的一些语法.当然,这里是假设你有一些ja ...

  3. python基础编程语法-编程入门02:Python基础语法

    现在让我们从基础概念开始逐步探索Python的语法,编程语言包含多种指令,其中最基本的是"表达式"(Expression),表达式有特定的"值"(Value), ...

  4. 【轻松学】Python面向对象编程——类的设计、基础语法、继承、多态、类属性和类方法、单例设计

    文章目录 1. 类的设计 大驼峰命名法 1.1 类名的确定 1.2 属性和方法的确定 练习 1.1 练习 1.2 2. 面相对象基础语法 2.1 定义简单的类(只包含方法) 2.1.1 定义只包含方法 ...

  5. JavaScript 网页编程(一)——JavaScript 基础语法

    目录 一.计算机编程基础 二.初识 JavaScript 三.JavaScript 变量 四.JavaScript 数据类型 五.标识符.关键字.保留字 六.JavaScript 运算符(操作符) 七 ...

  6. python基础语法总结-Python基础语法精心总结!看完都知道的可以往下继续学习了...

    这应该是最详细的Python入门基础语法总结! 定义变量,使用变量 input 用户自己输入值 print 打印值 可以输出多个变量 %d|%s 用于输出变量时占位 字符串(后期爬虫必备) int() ...

  7. python基础语法总结-Python基础语法总结之逻辑运算

    Python里的逻辑运算有and.or 和 not,它们分别说明为与.或.非.虽然逻辑运算符在Python基础语法中是基础中的基础,但是对于零基础小白来讲,还是有一定难度的.本文就来为零基础小白好好讲 ...

  8. python基础语法手册format-Python基础语法-格式化输出

    Python基础语法 python格式化输出 python在格式化输出过程中,就我个人学习历程来看,有两种格式化输出方法. 第一种是利用 % s %d 进行占位输出,效果就是这样的: info='li ...

  9. python基础语法大全turtle_Python 基础语法-turtle篇-Go语言中文社区

    Python 基础语法-turtle篇 今天这节课主要讲了类的概念,并引出turtle中的函数和Turtle类. -创建一个Turtle类:brad=turtle.Turtle() -定义Turtle ...

  10. 【CSS基础语法】CSS基础语法知识学习笔记汇总

    CSS基础语法 前言 一.样式定义方式 1.html 2.css 二.选择器 1.html 2.css 三.颜色 1.html 2.css 四.文本 1.html 2.css 五.字体 1.html ...

最新文章

  1. 如何取得sql语句的运行时间
  2. 034_Tabs标签页
  3. 使用DocFX生成文档
  4. 提高DB2数据库Web程序性能的两条规则
  5. 【项目管理】ITTO-风险管理
  6. MySQL缓存的查询和清除命令使用详解
  7. 64位系统安装ODBC驱动的方法
  8. C语言实现与功能的程序,用C语言实现Ping程序功能
  9. More DETAILS! PBR的下一个发展在哪里?
  10. 2020没赚到,你真的该好好想想了
  11. 【Unity Shader】(九) ------ 高级纹理之渲染纹理及镜子与玻璃效果的实现
  12. oracle查询创建用户,Oracle创建设置查询权限用户
  13. 华三H3C路由器配置FTP服务并使用电脑连接ftp传输文件
  14. C语言将raw转为bmp,Raw格式转换为Bmp格式
  15. Edison 物联网:使用MRAA发挥平台输入输出能力
  16. 一脸懵逼加从入门到绝望学习hadoop之Caused by: java.net.UnknownHostException: master报错...
  17. WordPress – wp-rocket插件的简单设置以及如何加速网站
  18. 中国企业出海应尽早把握海外社交媒体运营红利-出海传播趋势的言灵视角
  19. 阿里云ECS共享型、通用型和突发型实例类型有什么区别?如何选择?
  20. Vue如何使用iconfont(阿里图标库)

热门文章

  1. 皖西学院计算机协会组织部,皖西学院
  2. Linux 系统的硬链接和软链接详解
  3. 如何将本地 Windows 电脑中的文件复制(上传)到远程的 Windows 服务器主机上
  4. 噪音声压和声功率的区别_南昌汽车隔音,深入了解汽车噪音的来源、危害以及解决方案...
  5. python二维数组排序_Python实现二维数组按照某行或列排序的方法【numpy lexsort】...
  6. c语言连接mysql_聊聊数据库MySQL、SqlServer、Oracle的区别,哪个更适合你?
  7. html ctf查找,Web CTF 解题思路总结—南京邮电大学攻防平台writeup
  8. t3软件怎么生成报表_临沂用友畅捷通T3财务通软件财税一体化
  9. 应用回归分析何晓群_二战上岸人大20年应用统计高分经验帖
  10. E1 PCM复用设备能当程控交换机用吗?