学习和使用数据库过程中,数据库经常会抛出一个错误码及简短解释。
如果知道这些错误代码的详细解释,对于我们快速定位问题,解决问题有极大的帮助。
下面,浅谈两个重量级数据库oracle和db2如何查看错误。
oracle错误工具oerr
适用平台:unix,linux;
windows平台由于自身脚本功能不够强大,oracle公司未开发该平台的错误工具。不过个人认为,其实还是oracle公司不想开发。因为,国外的oracle爱好者们已经开发出了适用于windows平台的oerr工具。
[oracle@shtdtest oracle]$ oerr ora 01632
01632, 00000, "max # extents (%s) reached in index %s.%s"
// *Cause: An index tried to extend past maxextents
// *Action: If maxextents is less than the system max, raise it. Otherwise,
// you must recreate with larger initial, next or pctincrease params.
[oracle@shtdtest oracle]$
db2 错误工具:CLP内置功能
命令格式:db2 ? [phrase | message | sqlstate | class-code]]
适用平台:unix,linux,windows
DB2 错误信息由标识符、简要说明以及SQLSTATE组成。如下所示:
C:\Program Files\IBM\SQLLIB\BIN>db2 connect to sample user db2admin using 123456
SQL30082N 安全处理失败,因为 "24"("USERNAME AND/OR PASSWORD INVALID")。
SQLSTATE=08001
其中SQL30082N 是标识符,SQLSTATE=08001 SQLSTATE 错误是DB2系列产品的公共错误代码,剩下的是简要说明。
标识符中,最后一个字符代表错误级别。N表示通知(NOTICIT),C表示严重(CRITICAL),同时具有负SQLCODE
W表示一个警告(WARNING),具有正SQLCODE。
查看错误解释可以输入: DB2 ? SQL30082N 或者 DB2 ? 08001
使用例子:
例2