HarmonyOS 鸿蒙Next 端侧调用云函数操作数据库,upsert传入时间数据出错,时间类型数据赋值问题

发布于 1周前 作者 wuwangju 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 端侧调用云函数操作数据库,upsert传入时间数据出错,时间类型数据赋值问题 端侧 调用云函数 操作数据库 , 数据传参时, 用时间戳,new Date() , new Date().getTime()

插表都不成功。

把时间 代码 注释掉, 再运行,会插表成功,但是 模拟器会 闪退。

云数据库 里的 时间 格式 是这样子的。

端云一体化,数据表 初始化 的两条数据,里面的数据是 时间戳, 布署云数据库,成功插入 时间 并能显示出来。

请各位大神,帮看一下是什么问题,要怎么改。谢谢

6 回复

老哥解决了吗

更多关于HarmonyOS 鸿蒙Next 端侧调用云函数操作数据库,upsert传入时间数据出错,时间类型数据赋值问题的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


没搞定哈,用云函数,耗了我大半个月,各种卡,后面 没敢再用,现在 都 在端侧调用数据库操作,不知道 安全性怎么样。先把APP 整出来,后面 再改进,

通过cloud.callfunction发送的参数params会先转换成JSON字符串再通过云函数的event参数接收

你在云函数里面有没有做处理,把时间字段转换成Date类型?

比如 侧端传进的是 13位的时间戳,1723498889445,那云函数这边 是这样处理吗

new Date(1723498889445)

我试了一下,要重新部署云函数,巨卡,部署不了,不知道 为什么,每次部署都要花好久时间,超时 是常事,

这样 也不行。 这个时间 到底 怎么赋值 传参呢

在HarmonyOS鸿蒙Next端侧调用云函数操作数据库时,若遇到upsert操作中时间类型数据赋值出错的问题,通常是由于时间数据格式不匹配或时区设置不一致导致的。

确保时间数据在端侧和云函数端以相同的格式传递。例如,可以使用ISO 8601标准时间格式(YYYY-MM-DDTHH:MM:SS.sssZ),这种格式被广泛支持且不易出错。

检查云函数处理时间数据的代码,确保能够正确解析传入的时间字符串,并将其转换为数据库所需的时间类型。如果数据库使用的是特定的时间类型(如TIMESTAMP),则云函数中的代码需要相应地处理时间字符串,以避免类型不匹配的错误。

此外,还需注意时区问题。确保端侧和云函数端使用相同的时区设置,或者在传递时间数据时包含时区信息,以便云函数能够正确解析和处理。

如果问题依旧存在,可能是由于其他未知因素导致的。此时,建议检查具体的错误信息,以便进一步定位问题。同时,也可以考虑在鸿蒙开发者社区中搜索类似问题或发帖求助,以获得更具体的帮助。

如果问题依旧没法解决请联系官网客服,官网地址是 https://www.itying.com/category-93-b0.html

回到顶部