美文网首页
iOS 数据存储

iOS 数据存储

作者: 夏天爱西瓜汁 | 来源:发表于2022-12-12 16:24 被阅读0次

    使用fmdb
    如何封装
    创建表
    设置主键,主键要求
    增:
    删:
    改:
    查:

    背景:将用户与人工客服的聊天消息存储下来,可以查询历史记录(一个用户对应多个客服,需要查询当前用户与所有客服的记录)
    msgid TEXT PRIMARY KEY
    将msgid设为了主键,接收到的消息msgid为后台生成(应该不会有重复吧),用户发出的消息id使用时间戳+会话id+发送方(0为用户,1为客服,2为提示),在用户发送消息和接收客服消息的时候存储到数据库(封装好的类,插入使用的sql是insert or replace)
    问题:查到的消息只有一条而且是存的最后一条,被覆盖了?
    设置了msgid为主键,使用insert or replace数据会被覆盖,使用insert into,又会报错Unknown error finalizing or resetting statement (19: UNIQUE constraint failed: cft_ucmsg_table.userid),但是主键明明是msgid,为什么错误信息是userid
    将userid又拼接了时间戳,存储就没被新的数据覆盖,疑惑,难道userid才是主键?

    相关文章

      网友评论

          本文标题:iOS 数据存储

          本文链接:https://www.haomeiwen.com/subject/nibfqdtx.html