Teradata存储过程浅析

1.什么是存储过程

存储过程是定义在Teradata数据库或用户空间中的对象,是可以执行的,包含

两种类型的语句:

1)SQL 语句 (StructuredQuery Language)

2)SPL 语句 (StoredProcedure Language)

SQL语句用于访问Teradata数据库中一个或多个表中的记录。SPL语句对执行

SQL语句增加了过程控制。

SPL提供了大多数第三代语言的功能:

1)分支逻辑条件逻辑

2)错误处理逻辑

3)退出逻辑

Teradata存储过程的其他特点包括:

1)可以包含输入/输出参数

2)可以包含处理例外情况的例外处理程序

3)可以包含说明的局部变量

4)通常包含SQL语句,但不要求

2.存储过程的特点

存储过程有下列特点:

1)存储在Teradata服务器端。

2)在Teradata服务器端编译和执行。

3)编译后的对象存储在存储过程表中。

4)源代码也可以存储在存储过程表中。

5)要求占用永久空间(permspace)。

使用SQL,用户可以对存储过程执行下列操作:

1)CREATE PROCEDURE

2)REPLACE PROCEDURE

3)RENAME PROCEDURE

4)DROP PROCEDURE

5)SHOW PROCEDURE

下列工具支持存储过程:

1)BTEQ

2)CLIv2

3)PP2

4)ODBC

5)QUERYMAN

6)TeqTalk(DMTEQ)

7)JDBC

8)ANSI SQL99 (SQL3)

9)PSM-96

3.存储过程的优势

传统的SQL请求来自客户机端,与之不同,存储过程包含的SQL请求来自服务

器端,并且在服务器端处理。SQL请求被服务器端的数据库管理软件激活,传递给

解析器(Parser),请求和应答被创建、处理,并可以返回给存储过程。存储过程将

结果集、状态码或计算结果返回给客户端应用。

使用存储过程有许多好处:

1)存储过程减少了客户机和服务器之间的网络流量;

2)将请求处理移到服务器端,所有处理到在服务器本地进行;

3)允许在服务器端定义和执行业务规则;

4)提供更好的交易控制;

5)提供更好的应用安全性。

你可能感兴趣的:(Teradata数据仓库技术)