先说一二段废话,数据库很早就接触了,但一直没深入进去研究,
大学里也学了简单的CRUD,我就认为数据库学“会”了,导致工作后,一次次现实问自己数据库到底会还是不会,然后就找一本书兴致勃勃的从头开始学,并告诫自己这次数据库一定学会。很多书开篇是讲数据库原理性、架构性的知识,比较乏味,我的印象始终认为这是是DBA该烦的事情,我只管好CRUD就够了,以至于再次学“会”了。这次开始学Oracle,希望自己能坚持下去,不要被那些原理性的知识给弄晕。
14日晚上订了9787111268031,选书还是选一本适合自己的,当然其他读者的评价也很重要,不过吹毛求疵的评价就另当别论了。
下面开始吧!
pl/sql(Procedural Language Extension to SQL 扩展SQL的过程语言):通过添加高级语言所拥有的编程结构和子程序,对SQL扩展。
pl/sql用于服务器端和客户端开发。
pl/sql语句块交给pl/sql引擎处理(pl/sql引擎对pl/sql块进行1.语法检查2.给程序变量分配存储地址3.产生pl/sql语句块的伪代码,伪代码存储在数据库中方便下次使用)
pl/sql语句块分为命名和匿名。两者都可以创建子程序(过程、函数和包)。
区别是:
命名的pl/sql语句块存储于数据库中,后期可以通过名称引用。
匿名的pl/sql语句块无名称,不会存储在数据库中,后期无法引用。
pl/sql语句块的组成,执行部分是必须的,声明和异常部分是可选的。
DECLARE 声明部分:进行标识符(变量、常量、游标)的定义。格式是:变量名 (保留字) 数据类型(大小) (赋值符号 所赋的值) 分号结束。每个声明语句都必须要用分号结束。
BEGIN 执行部分:代码会发送给服务器端的pl/sql引擎。
EXCEPTION 异常处理部分
END;
. pl/sql语句块的结束
/ 执行这个pl/sql语句块
例子:输入半径得到圆面积
DECLARE v_radius NUMBER := &sv_radius; v_area NUMBER; c_pi NUMBER := 3.14; BEGIN v_area := v_radius * v_radius * c_pi; DBMS_OUTPUT.PUT_LINE('圆面积为'||v_area); END; |
变量和常量的定义:名称 类型 := 所附的值。
变量
v_radius NUMBER := &sv_radius; |
常量
c_pi NUMBER := 3.14; |
替代变量:用于从用户那里接收输入使用&或&&,但不能用于输出值。
&sv_radius |
打开/关闭DBMS输出结果
SET SERVEROUTPUT ON/OFF |
打开/关闭显示如何实现替代的语句
SET VERIFY ON/OFF |
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8731073/viewspace-705492/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/8731073/viewspace-705492/