---
title: TableAPI queryAndAppend 操作执行结果不符合预期并且客户端执行前缀查询的时候报错-OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于TableAPI queryAndAppend 操作执行结果不符合预期并且客户端执行前缀查询的时候报错相关的常见问题和使用技巧，帮助您快速解决TableAPI queryAndAppend 操作执行结果不符合预期并且客户端执行前缀查询的时候报错的难题。
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

划线反馈

# TableAPI queryAndAppend 操作执行结果不符合预期并且客户端执行前缀查询的时候报错

更新时间：2026-07-31 09:11

适用版本： V2.2.x、V3.1.x、V3.2.x 内容类型：Troubleshoot  

## 问题现象

- queryAndAppend 对 int 类型数据执行 append，服务端不支持报错（只支持 varchar/varbinary 类型），但是客户端返回 success，并且 affected rows 为 1。
 - TableAPI 客户端执行查询的时候只指定前缀，返回 -4016。

## 关键诊断信息

### 触发条件

queryAndAppend 对 int 类型数据执行 append 或 table api 客户端执行查询的时候只指定前缀。

## 问题原因

- 服务端执行失败会重置错误码为 OB_SUCCESS，并且 affected_rows 设置的是 queryAndAppend 中 query 的结果行数。
 - 服务端校验 rowkey 个数和 scan range 中 obj 个数不一致，直接返回了 -4016。

## 问题的风险及影响

- queryAndxxx 操作执行失败的时候返回的结果不符合预期。
 - 无法使用主键或者索引的前缀进行查询。

## 影响租户

影响 OceanBase 数据库中的 Oracle 租户和 MySQL 租户，对于 SYS 租户无影响。

## 影响的版本

OceanBase 数据库 V2.2.77 GA（oceanbase-2.2.77-20210508211731）及之后版本、V3.1.2 GA（oceanbase-3.1.2-20210618150922）及之后版本、V3.2.3 GA（oceanbase-3.2.3.0-20220418212020）及之后版本、V3.2.4 GA（oceanbase-3.2.4.0-100000072022102819）及之后版本。

## 解决方法及规避方式

- 修改服务端使用 atomic 的方式执行 queryAndAppend 中的 append 操作，从而返回错误码，同时修正 affected_rows 为 queryAndAppend 中 append 操作影响的行数，而不是 query 的结果集行数。
 - 在客户端传递 scan_range_column 的时候，基于 scan_range_column 补齐 key_range 中缺少的 obj。

上一篇

[执行报错 ERROR 4152 (42000): Null value，get obj error(ret=-4152)](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000001406987)

下一篇

[GIS 功能中 GIS 类型字段及相关函数运行报错 ERROR 3548](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000245401) ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
