存储过程
存储过程是一种命名的PL/SQL程序块,它既可以没有参数,也可以有若干个输入、输出参数,甚至可以有多个既作输入又作输出的参数,但它通常没有返回值。存储过程被保存在数据库中,它不可以被SQL 语句直接执行或调用,只能通过EXECUT 命令执行或在PL/SQL 程序块内部被调用。由于存储过程是已经编译好的代码,所以其被调用或引用时,执行效率非常高。
PL/SQL(Procedural Language/SQL)是一种过程化语言,在PL/SQL 中可以通过IF 语句或LOOP 语句实现控制程序的执行流程,甚至可以定义变量,以便在语句之间传递数据信息,这样PL/SQL 语言就能够实现操控程序处理的细节过程。
PL/SQL 程序都是以块(BLOCK)为基本单位,整个PL/SQL 块分3 部分:声明部分(用DECLARE开头)、执行部分(以BEGIN 开头)和异常处理部分(以EXCEPTION 开头):
SQLPlus是一个被DBA和开发人员广泛使用的功能强大的Oracle工具,可以在各个平台上拥有操作的一致性。SQLPlus可以执行输入的SQL语句和SQL文件,通过SQLPlus可以和数据库进行对话。以下例子基于Oracle 11g。
Nginx服务器提供了Rewrite功能,用于实现URL的重写。该功能由ngx_http_rewrite_module模块提供,该模块默认开启。Nginx服务器的Rewrite功能依赖于PCRE(Perl Compatible Regular Expressions,Perl兼容的正则表达式),所以在编译安装Nginx的时候需要先安装PCRE库。
Rewrite功能就是,使用Nginx提供的全局变量或自己设置的变量,结合正则表达式和标志位实现url重写以及重定向。Rewrite只能对域名后边的除去传递的参数外的字符串起作用,例如https://mrbird.cc/page/2/search?type=1&value=nginx只对/page/2/search重写。
Nginx配置文件主要分成四部分:main(全局设置)、http(HTTP的通用设置)、server(虚拟主机设置)、location(匹配URL路径)。还有一些其他的配置段,如event,upstream等。
一个完整的Nginx配置如下:
Nginx官网:http://nginx.org/en/download.html。网页提供了Nginx三种版本下载:开发版(Mainline Version)、稳定版(Stable Version)和过期版(Legacy Version)。Nignx提供Linux和Windows版本,这里使用的是Linux版本。此外,http://nginx.org/download/提供了所有版本的Nginx下载。
Nginx源码的编译需要GCC编译器:
1 | # gcc --version |