WEB开发网
开发学院数据库DB2 DB2数据库移植常见问题全面解析 阅读

DB2数据库移植常见问题全面解析

 2009-01-19 16:39:38 来源:WEB开发网   
核心提示: DB2存储过程中的异常处理如何写,与Oracle中的有何区别?解决办法:DB2 中使用以下 SQL 语句声明和处理异常:清单7. 声明和处理异常,DB2数据库移植常见问题全面解析(5),方法一DECLARE HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT

DB2存储过程中的异常处理如何写,与Oracle中的有何区别?

解决办法:DB2 中使用以下 SQL 语句声明和处理异常:

清单7. 声明和处理异常,方法一

DECLARE HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND

BEGIN

END;

或者也可以针对某一sqlstate定义相应的错误处理句柄,示例如下:

清单8. 声明和处理异常,方法二

DECLARE condition_name CONDITION FOR SQLSTATE value;

DECLARE EXIT HANDLER FOR too_many_rows

BEGIN

...

END;

如何查询数据库中用户已定义的表?

解决办法:select * from syscat.tables;

原因分析:DB2 提供了一组视图用以用户查询数据库对象,这些视图统一存放在 SYSCAT 模式下,这些视图几乎包含了所以的数据库对象编目信息,包括表、视图、名字空间、存储过程等等。用户可以在《DB2 UDB SQL Reference Volume 1》SQL Reference 1 的 Appendix D 中找到这些视图的详细定义。

如何查询数据库中用户已定义的 sequence?

解决办法:使用 select * from syscat.sequences。

如何用SQL语句获得表空间的当前使用率?

解决办法:可以使用如下 SQL 语句查询,在用该语句获得了表空间已用页数,可用页数等信息后,即可计算出表空间当前使用率:

清单9. 获得表空间页数信息

select tablespace_name, page_size, usable_pages, used_pages, free_pages

from table( snapshot_tbs_cfg( 'sample', -1 ) ) as t

where t.tablespace_type = 0 and t.tablespace_name=

在 Oracle 中可以将游标结果集通过 BULK 方式存入宿主数组中,DB2中如何实现?

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:DB 数据库 移植

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