通过本文将学习到
从我个人的理解来看PLSQL更像一个IDEA+ORACLE的一个集合体,突然理解为什么有人说SQL语言是编程的第四种语言了。其实想想也挺有不一样的见解!废话不多说开始进行安装。
从官网处下载对应的PLSQL软件客户端。
https://www.allroundautomations.com/registered/plsqldev.html下载完成后进行安装,讲实话就仅仅我个人而言,并不是太喜欢这种开发模式。也许是学的太少了。
接着需要下载oracle client 的精简版。接单来说就是一个连接oracle数据库的东西像,JDBC.之类。下载地址为。
http://download.oracle.com/otn/nt/instantclient/121020/instantclient-basic-nt-12.1.0.2.0.zip
将下载好的压缩包直接解压到本地磁盘(名字可以随意,但是不能有中文字符)
tnsnames.ora文件记录的是你连接的oracle数据库的用户名和密码。这个一般是项目负责人进行分配,当你进入项目的第一件事情就是询问相应的配置信息。然后关键点在于将这个配置信息你需要安装到上一步所说的文件夹目录下。需要
新建目录夹 network->新建ADMIN文件->放入文件tnsnames.ora.
可以打开tnsnames.ora文件看下里面的配置。
此环境变量应该的各个意义。
如果安装过ORACLE,并设置ORACLE_HOME环境变量,那么会自动在%ORACLE_HOME%/network/admin/位置查找tnsnames.ora文件。
ORACLE_HOME:解压文件夹目录
TNS_ADMIN:解压文件夹中的tnsnames.ora目录
NLS_LANG:AMERICAN_AMERICA.AL32UTF8
LD_LIBRARY_PATH:解压文件夹的目录
我只配置了语言信息啊 ~~~~
tool->preferences->connection
Oracle Home=解压文件夹的目录
关于plsql的连接oracle数据库的配置就已经完成了。接下来是正题!
在学习任何东西前,因该有个总的定性。这是最近感觉到的,当你牢牢把握住他的思想的时候你就会更加容易理解别人为什么这么干了!所以什么是PLSQL了一张图可以很好的解释。
PLSQL 是Oracle公司在SQL基础上进行扩展而成的一种过程语言。PLSQL提供了典型的高级语言特 性,包括封装,例外处理机制,信息隐藏,面向对象等;并把最新的编程思想带到了数据库服务器和工具 集中。对于我来言PLSQL就是IDEA+ORACLE集成在一起了。
PLSQL无异于是有优势的,不然为什么这么多大型公司进行使用!其本质的特性就是直接用sql进行编程进行业务逻辑的处理,而不像java,像c++那种写个查询语句还需要封装成一个statement语句去执行。在大数据的前题下PLSQL的编程方式无异于更加有效率!可以同过一张分析图来感受。
老是说进行程序于数据库的连接是最耗性能的,我对此研究不生,有时间可以测试一番。
块是PLSQL中执行的一个小单位,分三种 匿名块、存储过程、函数。
其中匿名块是没有名字的,存储过程没有返回值,函数有名字有返回值。
匿名块其块的语法为
DECLARE (Optional)
Variables, cursors, user-defined exceptions
BEGIN (Mandatory)
SQL statements
PL/SQL statements
EXCEPTION (Optional)
Actions to perform when errors occur
END; (Mandatory)
DECLARE:用来申明变量 相当于JAVA中的初始化变量
BEGIN:是一段程序的开始,可以看成一个方法。
EXCEPTION:用来处理逻辑中可能出现的异常
END;是一个结束。一个小方法结束了。
不同于JAVA中定义变量的模式 ,JAVA中的定义如 : 变量类型 变量名 = 赋值 或者 变量类型 变量名 = new 构造方法;
例子 :int i = 1; String str = new String();
PLSQL中是在DECLARE中定义,且定义的方法为:变量名 变量类型(数据的长度) Not null :=默认值 后面的都是可选项。
例子:
DECLARE
v_hiredate DATE;
v_deptno NUMBER(2) NOT NULL := 10;
v_location VARCHAR2(13) := 'Atlanta';
c_comm CONSTANT NUMBER := 1400;
其语法是:identifier [CONSTANT] datatype [NOT NULL] [:= | DEFAULT expr];
PLSQL变量类型.
相较于JAVA中的一些不一样的东西,我们可以知道。对应的是什么。
Java中的变量就是8大基本变量加,引用变量等。
PLSQL中的变量有什么了:
系统常规的简单变量类型,比如大多数数据库字段类型都可以为变量类型。
举例:
Sqlplus目前无用,暂时不学。
在PLSQL中块之间是可以相互嵌套的比如
BEGIN
<>
DECLARE
birthdate DATE;
BEGIN
DECLARE
birthdate DATE;
BEGIN
--DBMS_OUTPUT.PUT_LINE(birthdate);
outer.birthdate:=TO_DATE('03-AUG-1970','DD-MON-YYYY');
END;
END;
END;
--这个东西主要是考虑变量的范围的地方。就是像什么了?像成员变量和局部变量的区别吧!
通过<
PLSQL中的单行注释为俩个小横杆 -- ,多行注释为/**/;
Java中注释 // /**/ xml与html中Plsql中-- 和/**/
DBMS_OUTPUT.PUT_LINE();
Declare
V_is number(10) :=&p_annual_salary --代表请输入,system.in
Begin
V_is :=v_is/12;
DBMS_OUTPUT.PUT_LINE(V_is ||) //||代表连接符。
End;
今天主要是对于PLSQL的一些基本概念的理解。通过类比JAVA的对应方式能够发现更加容易理解以及记忆。身为一个程序员要对新的技术保持热情和探索,其次想成为一个技术leader甚至是一个公司的leader总结表达是非常有必要练习的,时间很宝贵,希望自己能够提高专注度,提高效率。这是节约时间的一个点,同时还因该有相应的计划。如果你准备的足够充分何愁不能成功?
今天再一次使用PLSQL也即将开启我自己真正的项目之旅对此我希望我能够及时总结,将PLSQL中常用的点都记录下来。既是理解记忆,同时可以应用于快速开发!时间很宝贵,好好生活,快乐工作!