什么是PL/SQL
结构化查询语言(Structured Query Language简称SQL)是用来访问关系型数据库一种通用语言它属于第四代语言(GL)其执行特点是非过程化即不用指明执行的具体方法和途径而是简单的调用相应语句来直接取得结果即可
例delete from students where major=Nutrition;
然而对于有些复杂的业务流程又要求相应的程序来描述那么GL就有些无能为力了
PL/SQL通过增加了用在其它过程性语言中的结构来对SQL进行了扩展使得它不仅仅是一个数据库查询语言而且也是一个编程语言
PL/SQL代表面向过程化的语言与SQL语言的结合在编写PL/SQL代码时可以在SQL语句中使用
()变量和类型
()控制语句
()过程和函数
()对象类型和方法
PL/SQL语言实现了将过程结构与Oracle SQL的无缝集成
例修改一个学生的专业如果没有该学生就插入一个新的记录
gl_glsql
DECLARE
v_newmajor VARCHAR():=History;
v_firstname VARCHAR():=Scott;
v_lastname VARCHAR():=Urman;
BEGIN
update students
set major=v_newmajor
where first_name=v_last_name and last_name=v_last_name;
If SQL%notfound then
insert into students(IDFIRST_NAMELAST_NAMEMAJOR) valueS (student_sequenceNEXTVALv_firstname
v_lastnamev_newmajor);
End if;
End;