DB2 SQL PL介绍
DB2 SQL PL
SQL PL是DB2所支持的过程化语言,它是SQL/PSM标准的一个子集。其根据应用范围不同,又分为Inline SQL PL,Embeded SQL PL和Compiled SQL PL。
Inline SQL PL
适用范围:触发器、函数和方法,支持部分SQL PL,使用时要注意一些限制
语法规则:BEGIN ATOMIC ... END
Embeded SQL PL
适用范围:嵌入式,配合宿主语言一起使用,有点类似于PowerBuilder编程形式
语法规则:BEGIN COMPOUND [ATOMIC|NOT ATOMIC] STATIC ... END
Compiled SQL PL
适用范围:支持所有的SQL PL
语法规则:BEGIN ... END
SQL Routine
包括过程、函数和方法(method),所谓的方法就是按照目的不同而创建出的概念,用于操作某个自定义类型(CREATE TYPE ...)的方法,有些类似于PL/SQL的面向对象概念。
DB2对PL/SQL的支持
DB2支持Oracle的PL/SQL,但在默认情况下这个功能是被关闭的,只有通过手动打开。
启动步骤:
db2start
db2set DB2_COMPATIBILITY_VECTOR=ORA
db2set DB2_DEFERRED_PREPARE_SEMANTICS=YES
db2stop
db2start
db2 CREATE DATABASE DB
测试结果:
CONNECT TO DB;
SET SQLCOMPAT PLSQL;
-- Semicolon is used to terminate
-- the CREATE TABLE statement:
CREATE TABLE t1 (c1 NUMBER);
-- Forward slash on a new line is used to terminate
-- the CREATE PROCEDURE statement:
CREATE OR REPLACE PROCEDURE testdb(num IN NUMBER, message OUT VARCHAR2)
AS
BEGIN
INSERT INTO t1 VALUES (num);
message := 'The number you passed is: ' || TO_CHAR(num);
END;
/
CALL testdb(100, ?);
相关文档:
Google dorks sql injection:
inurl:index.php?id=
inurl:trainers.php?id=
inurl:buy.php?category=
inurl:article.php?ID=
inurl:Play_old.php?id=
inurl:declaration_more.php?decl_id=
inurl:Pageid=
inurl:game ......
Cross Apply使表可以和表值函数结果进行join, 这样表值函数的参数就可以使用一个结果集,而不是一个标量值,下面是book online的原文,有例子,有解释。
The APPLY operator allows you to invoke a table-valued function for each row returned by an outer table expression of a query. The table-valued function act ......
SQL Server 系统全局变量
@@CONNECTIONS
返回自上次启动以来连接或试图连接的次数。
@@CURSOR_ROWS
返回连接上最后打开的游标中当前存在的合格行的数量(返回被打开的游标中还未被读取的有效数据行的行数)
@@DATEFIRST
返回每周第一天的数字
@@ERROR
返回最后执行的SQL 语句的错误代码。
@@FETCH_STATUS
返 ......
/*
本文专注于将Excel导入SQL SERVER2005数据库
此路径下的这个工具,是SQL SERVER2005 用来导入导出数据的工具。
C:\Program Files\Microsoft SQL Server\90\DTS\Binn\DTSWizard.exe
一般在数据库名上--右键-->Tasks-->Import Data -->界面就出来了,和点击上面的工具是一个东西。
首次使用这个D ......
SQL宝典
SQL必知必会第三版
SQL入门经典第四版
Sams Teach Yourself SQL in 10 Minutes Third Edition
SQL The Complete Reference
......