WEB开发网
开发学院数据库DB2 DB2 Express-C 9 DBA 和开发人员实验教程,快速实验... 阅读

DB2 Express-C 9 DBA 和开发人员实验教程,快速实验 11,12:创建触发器和用户自定义函数

 2009-11-16 00:00:00 来源:WEB开发网   
核心提示: 9.再次查看 saleslog 表的内容,其中有多少个数据行?创建用户定义函数(实验 12)目标DB2 Developer Workbench(DWB)(最新的版本叫做 IBM Data Studio)是一个用来编写存储过程和函数的 IDE,DB2 Express-C 9 DBA 和开发人员实验

9.再次查看 saleslog 表的内容。其中有多少个数据行?

创建用户定义函数(实验 12)

目标

DB2 Developer Workbench(DWB)(最新的版本叫做 IBM Data Studio)是一个用来编写存储过程和函数的 IDE。在本次实验中,将用 Data Studio 创建一个标量用户定义函数。这会帮助您了解 Data Studio 并熟悉编写用户定义函数所用的 SQL PL 语言。

前提条件

1.要完成这部分所提到的内容你需要下载并安装 IBM Data Studio。

2.你需要了解 SQL 和数据库函数的基本概念。

步骤

1.打开 Data Studio(提示:可以通过 Start 菜单访问它)。

2.在 Data Project Explorer 窗口中,选择前面创建的项目并选择 Open Project。

3.右键单击 User-Defined Functions 文件夹。选择 New 菜单项。选择 SQL User-Defined Function 菜单项。如果希望在 GUI 向导的带领下完成这个过程,也可以选择 User-Defined Function using Wizard 菜单项。

4.这时应该会打开 Editor 视图,其中包含一个函数的骨架。将代码改为:

清单 2. UDF 创建代码

CREATE FUNCTION booktitle(p_bid INTEGER) 
RETURNS VARCHAR(300) 
----------------------------------------------------------------- 
-- SQL UDF (Scalar) 
----------------------------------------------------------------- 
SPECIFIC booktitle 
F1: BEGIN ATOMIC 
DECLARE v_book_title VARCHAR(300); 
DECLARE v_err VARCHAR(70); 
SET v_book_title = (SELECT title FROM books WHERE p_bid = book_id); 
SET v_err = 'Error: The book with ID ' || CHAR(p_bid) || ' 
was not found.'; 
IF v_book_title IS NULL THEN 
SIGNAL SQLSTATE '80000' SET MESSAGE_TEXT=v_err; 
END IF; 
RETURN v_book_title; 
END 

5.右键单击这个函数并选择 Deploy 构建它。

6.单击工具栏中的 Run 按钮运行这个函数。

7.因为这个函数需要一个输入参数,所以会出现一个对话框,要求您为这个参数指定一个值。

输入值 80002。

结果是什么?

再用 1002 试一次。

这一次发生了什么情况?(提示:查看 Output 视图的 Messages 部分。)

8.完成后,关闭 DWB。

上一页  1 2 3 4 

Tags:DB Express DBA

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接