首页 > 数据库 >【AGC】云数据库开发常见问题汇总

【AGC】云数据库开发常见问题汇总

时间:2023-07-14 14:25:23浏览次数:42  
标签:lang 常见问题 String -- 数据库 AGC header SDK

​ 【问题背景】

近期越来越多的开发者通过SDK使用云数据库,云数据库是一款支持端云数据协同管理、可扩展的Serverless数据库产品,提供简单易用的多平台原生SDK,您的应用可以通过SDK直接访问云侧数据库。同时,云数据库还支持通过Server SDK直接管理云侧数据,实现云侧数据的高效管理。同时在集成与开发过程中可能会遇到各种问题,下面我来汇总一些常见的问题供大家来参考。

 

【问题1】

使用云数据库HarmonyOS(JAVA)SDK,调用mCloudDB = AGConnectCloudDB.getInstance(instance,AGConnectAuth.getInstance(instance));方法时闪退报错。报错信息如下:

Reason:java.lang.UnsatisfiedLinkError: No implementation found for void com.huawei.agconnect.cloud.database.AGConnectCloudDB.nativeGetInstance(com.huawei.agconnect.cloud.database.CertificateService, java.lang.String, java.lang.String, java.lang.String, java.lang.String) (tried Java_com_huawei_agconnect_cloud_database_AGConnectCloudDB_nativeGetInstance and Java_com_huawei_agconnect_cloud_database_AGConnectCloudDB_nativeGetInstance__Lcom_huawei_agconnect_cloud_database_CertificateService_2Ljava_lang_String_2Ljava_lang_String_2Ljava_lang_String_2Ljava_lang_String_2)

【解决方案】

目前云数据库HarmonyOS(JAVA)只支持api6的arm v8的设备进行测试,开发者使用的是模拟器,肯定是不支持的,需要使用API 6的远程设备或者真机进行调试。

 

 

【问题2】

云数据库服务端如何实现多表连接查询。

【解决方案】

目前云数据库暂不支持多表联查接口,需要实现相关功能的话需要开发者自己构造demo。

 

【问题3】

调用executeUpsert()接口想云数据库中写入数据,日志显示执行成功,但是云数据库页面没有数据。

【解决方案】

查看了全量日志,有这么一条警告:W/CertificateService: [getUserInfo] The AGConnectUser is null.该条日志显示用户未登录,在操作云数据库前需要调用AUTH SDK登录用户,才能获取权限,需要开发者检查写入数据时机,是不是没在回调里面处理,登录还没有完成就操作数据库了。

 

【问题4】

服务端通过REST API 接口使用云数据时,如何实现像Android SDK这样的复合查询:两个字段用or连接,只要满足其中一个就可以。

【解决方案】

REST API支持or语法的请求报文可以参考如下示例:

curl --location 'https://lfagcgwtest01cn.hwcloudtest.cn:18062/agc/apigw/clouddb/clouddbservice/sync/query?_v=4' \

--header 'client_id: 117************1952' \

--header 'productId: 244************846' \

--header 'projectId: 244************846' \

--header 'agcTeamId: 413************2377' \

--header 'Content-Type: application/json' \

--header 'Authorization: Bearer ************' \

--data '{

"msgInfo": {

"type": 5,

"opStore": {

"storeName": "store01"

}

},

"clientInfo": {

"appVer": 3

},

"queryReqMsg": {

"queryType" : 0,

"queryTable" : "Student",

"queryCond" : "{\"queryConditions\":[{\"conditionType\":\"EqualTo\",\"fieldName\":\"id\",\"value\":\"00002\"},{\"conditionType\":\"Or\"},{\"conditionType\":\"EqualTo\",\"fieldName\":\"age\",\"value\":\"40\"},{\"conditionType\":\"Limit\",\"value\":{\"number\":10,\"offset\":0}}]}"

}

}'

 

【问题5】

使用华为认证手机号登录以后,user不为空,初始化了数据库,创建新的数据对象时提示没有权限,错误码:15。

【解决方案】

不要重新初始化AGC的instance,而是使用AGCInstance.getInstance来获取默认的instance。请参考:

AGConnectInstance instance = AGConnectInstance.getInstance();
mCloudDB = AGConnectCloudDB.getInstance();

标签:lang,常见问题,String,--,数据库,AGC,header,SDK
From: https://www.cnblogs.com/mayism123/p/17553559.html

相关文章

  • 【AGC】删除控制台应用重建报错url is null问题
    ​【关键字】AGC、agconnect-services.json、InvalidParameterException 【问题描述】有开发者反馈在删除了AppGalleryConnect中某个应用及其对应的项目,再重新创建相同的应用(包名一致),并且重新下载agconnect-services.json到项目中,应用会因为com.huawei.agconnect闪退。报错......
  • QGIS在Windows上下载安装与建立空间数据库连接
    场景PostGIS在Windows上的下载与安装:PostGIS在Windows上的下载与安装_霸道流氓气质的博客在上面安装postGIS成功的基础上,怎样下载安装QGIS并建立与空间数据库的连接。QGIS简介QGIS(原称QuantumGIS)是一个用户界面友好的开源桌面端软件,支持数据的可视化、管理、编辑、分析以及印刷地......
  • 传奇数据库教学-传奇MagicDb、MonsterDb、StditemDb数据库说明
    MagicDb:是你所修炼的法术和各种技能.(1)magsid物品代号(2)magname物品名称(3)effecttype效果属性(4)effect效果(放此魔法所产生的动画效果)(5)spell每次耗用魔法值(6)defspell升级后增加的每次耗用魔法值(7)defpower升级后增加的威力(8)defmaxpower升级后增加的最大(9)job......
  • 数据库导出指定的时间段
    #!/bin/bashexportPATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin'USER=admin2PASS=L4bAWUye2A4JNN!DB_NAME=ng_kboss_personnel#导出mysql-u$USER--password="$PASS"$DB_NAME-Ne"SELECT*FROMng_attendance_si......
  • MySQL数据库迁移(直接复制文件)
    MySQL数据库迁移(直接复制文件)-简书(jianshu.com)看了几种方法:1、修改注册表的windows下迁移mysql数据-程序员丁先生-博客园(cnblogs.com)2、mysqldump指令将数据库表/数据保存成xx.sql文件存到本地的(157条消息)如何简单实现mysql数据库迁移_岁月呀的博客-CSDN博客......
  • JdbcTemplate(操作数据库-查询返回对象、查询返回集合)
    实现类:packageorg.example.spring.dao;importorg.example.spring.entity.Book;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.jdbc.core.BeanPropertyRowMapper;importorg.springframework.jdbc.core.JdbcTemplate;im......
  • 数据库连接池之c3p0-0.9.1.2,16年的古董,发生连接泄露怎么查(一)
    背景这篇文章是写给有缘人的,为什么这么说呢,因为本篇主要讲讲数据库连接池之c3p0-0.9.1.2版本。年轻的朋友,可能没怎么听过c3p0了,或者也仅限于听说,这都很正常,因为c3p0算是200几年时比较流行的技术,后来,作者消失了好几年,12年重新开始维护,这时候已经出现了很多第二代线程池了,c3p0已经......
  • mysql数据库和数据表
    1、介绍在mysql中,使用数据库database对应一个项目,管理项目下的数据表。使用数据表table对应一个对象结构,管理属性和值。2、数据库命令(1)查看所有数据库showdatabses;(2)删除数据库dropdatabasedatabase_name;(3)创建数据库createdatabasedatabase_name;(4)选择数据库use......
  • 数据库的范式设计
    数据库的范式设计原文链接:(三)MySQL之库表设计篇:一、二、三、四、五范式、BC范式与反范式详解!-掘金(juejin.cn)【一】引言MySQL的库表设计,在很多时候我们都是根据我们自己的个人喜好和习惯创建出来的,在前期的设计中总是会有考虑不到的地方,对于库表结构的划分也并不明确......
  • 常用关系型数据库(草稿)
     仅针对mysql、sqlserver、oracle、人大金仓、达梦数据库数据库是一组文件,位于磁盘,用于存储数据表名/字段规范/*表名/字段长度:Oracle:最多30个字符SQLServer:最多128个字符MySQL:最多64个字符​表名规范:1.以字母开头,只能使用A-Z、a-z、0-9、[#$不建议]MySQL中......