PLSQL入门与精通(第2章:HelloWord例子)

大家好。我是从事软件行业20年的牧无文兄。

上一章对PL/SQL做了一个简单的介绍。这一章简单认识一下PLSQL样子。
所有语言学习都是从“HelloWord”开始的,我们也是从“HelloWord”开始认识PLQL。

首先,我们要有PLSQL执行环境,给数据库发送PLSQL或者SQL命令的时候,需要用某些中间件,譬如ODBC中间件,或者其他中间件。其中SQLPLUS直接可以发送SQL命令或者PLSQL块。
环境1:SQL
PLUS 。这个是安装Oracle的的时候的一个简单的工具。(详细安装和配置大家自己从网上找一下,在此不做介绍)
环境2:ObjectBrower。这是个连接数据库的开发软件。(详细安装和配置大家自己从网上找一下,在此不做介绍)

我们用SQL*PLUS为例子,进行介绍。一下是最简单的“HelloWord“的PLSQL例子:

SQL> connect user/pwd@dbsid
已连接。

SQL> BEGIN
2 NULL;
3 END;
4 /

PL/SQL成功完成。

首先,通过记述“BEGIN”,SQLPlus认识到这是应该发送到数据库的块的开始,开始在SQLPlus的缓冲存储器中存储字符串。第二行和第三行也会在缓冲区中累积。根据最后第4行的“/”,SQL*Plus将缓冲区中存储的字符串一起发送到数据库服务器。

另一方面,在数据库服务器侧,如果发送来的字符串在语法上符合块的格式,则执行该操作。如果能正确执行,则返回SQLPlus,SQLPlus表示:“PL/SQL正常完成。”的信息显示在画面上。

从应用程序发送到Oracle数据库服务器的块不加名字,所以称为无名块。无名PL/SQL块必须以“BEGIN”或“DECLARE”开始,最后以“END;”结束。第2行的“NULL;”是表示“什么都不做”的执行语句。

根据语言的不同,如果没有执行语句的话可以省略,但是PL/SQL语言不能省略执行语句。即使没有要执行的内容,最少也要写一句执行语句。

上面的例子是“什么都不做”的无名PL/SQL块。

SQL> SET SERVEROUTPUT ON
SQL> BEGIN
2 DBMS_OUTPUT.PUT_LINE(‘HelloWord!’);
3 END;
4 /

HelloWord!←显示的信息

PL/SQL成功完成。

这里第二行的DBMSOUTPUT.PUT_LINE(~)可在SQLPlus的画面上显示指定的值。是只在SQLPlus等Oracle产品的工具上有意义的PL/SQL的执行文。

另外,最初的“SET SERVEROUT PUT ON”,在该会话中可以进行SQLPlus的画面输出。这不是PL/SQL,而是SQLPlus的命令,不是发送到数据库服务器。因此,请注意在无名块以外记述。

因为是会话单位的功能,所以不需要每次执行,只在会话中执行一次就可以了。

这就是简单的HelloWord例子。是不是很简单。

下来一章我们认识一下PLSQL变量。

猜你喜欢

转载自blog.csdn.net/niusr_1980_01/article/details/113916216