错误处理
每个数据库操作均接受一个as_error对象做为参数。当在操作期间发生错误,参数as_error会被填入状态码和错误信息。通常,参数as_error是数据库操作的第二个参数。
as_error提供的信息包括:
code
— 操作的状态,类型是as_status。message
— 错误码相应的信息。若操作成功完成,此信息可能为空(NULL)。func
— 错误发生的函数名。若未能正确捕获,可能为空(NULL)。file
— 错误发生的文件名。若未能正确捕获,可能为空(NULL)。line
— 错误发生的文件行号。若未能正确捕获,可能为0。
当操作完成,返回一个as_status类型的值,此值对应于as_error.code。若操作返回失败状态,一般是非AEROSPIKE_OK, 应用应检查as_error变量以取得更多信息。请参见as_status.h获取完成列表。
一个as_error变量可重用于多个操作,每个操作会重置as_error并在出错时设值。
下面是一个错误处理的简单示例:
if (aerospike_key_put(&as, &err, NULL, &key, &rec) != AEROSPIKE_OK) {
fprintf(stderr, "err(%d) %s at [%s:%d]\n", err.code, err.message, err.file, err.line);
}
原文链接: http://www.aerospike.com/docs/client/c/usage/error.html
译 者: 歪脖大肚子Q
时间: 2024-10-07 00:16:46