DB2数据库移植常见问题全面解析
2009-01-19 16:39:38 来源:WEB开发网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中如何实现?
- ››db2 对float类型取char后显示科学计数法
- ››DB2中出现SQL1032N错误现象时的解决办法
- ››DB2 锁升级示例
- ››数据库对象——存储过程
- ››db2诊断系列之---定位锁等待问题
- ››数据库设计词汇对照表
- ››db2 命令选项解释
- ››数据库大型应用解决方案总结
- ››移植Windows自宿主WCF服务到Linux/Mono2.8
- ››DB2 最佳实践: 使用 DB2 pureXML 管理 XML 数据的...
- ››DB2 9.5 SQL Procedure Developer 认证考试 735 准...
- ››DB2 9.5 SQL Procedure Developer 认证考试 735 准...
更多精彩
赞助商链接