版本API12
报错 1008230009 云数据库客户端内部错误
当你编写好表字段,导出为json格式,
放到了正确的文件夹下AppScope/resource/rawfile/schema.json
也写好了对象类型文件
import { cloudDatabase } from '@kit.CloudFoundationKit';
class BookInfo extends cloudDatabase.DatabaseObject{
public naturalbase_ClassName(): string {
return "BookInfo";
}
public id: number | undefined;
public bookName: string | undefined;
public author: string | undefined;
public price: number | undefined;
public publisher: string | undefined;
public publishTime: Date | undefined;
}
export { BookInfo };
运行了代码:
const agcDataBase: cloudDatabase.DatabaseZone = cloudDatabase.zone('FanQieSQL');
public async upsertUser(uid: string, data: number): Promise<number> {
try {
let book = new BookInfo();
book.bookName = '一本书';
const result = await agcDataBase.upsert(BookInfo);
return result;
} catch (error) {
showLog.error(TAG, `插入失败: ${error}`);
throw error;
}
}
却报错:
1008230009 云数据库客户端内部错误
你去查看官网错误码会得到这样一句:
处理步骤
请通过在线工单系统联系技术支持人员定位问题。
是不是一头雾水?表没问题啊,步骤也没问题啊?API9-11也没这问题啊???
其实就一个原因:
那就是:
你使用了自增主键:
解决办法有二:
一、想保留自增主键,则退回API9-11的SDK及用法。
二、将自增主键改为string主键,在端侧用UUID.V4来增加主键。
如果是在云函数内,建议安装uuid@8.3.2以适应CommonJS环境