机器人终于记住我了!数据库节点实战,打造“有记忆”的个性化助手
用户偏好存储 跨对话记忆 记账/推荐/设置持久化你有没有发现每次和机器人聊天它都像“第一次见面”— 今天告诉它“我喜欢喝冰美式”明天再问“推荐一杯咖啡”它又问你“你喜欢什么口味”— 设置好的“预算上限2000元”第二天就忘了还得重新说一遍。— 用户反馈的问题机器人不会自动记录你得自己复制粘贴到Excel里。痛点机器人的“记忆”只存在于当前对话。一旦刷新页面或开启新会话之前聊过的内容全没了。今天这篇文章我就教你用Coze的数据库节点给机器人装上“长期记忆”。用户说过的话、设置过的偏好、提交的反馈都可以存入数据库下次对话时自动读取。不需要写复杂的SQLCoze自带AI生成SQL功能你只需点几下鼠标。 本文解决什么问题— ✅ 让机器人“记住”用户的偏好设置如喜欢的风格、预算上限— ✅ 实现跨对话的个性化推荐— ✅ 自动记录用户反馈和操作日志— ✅ 理解数据库节点的“单用户模式”vs“多用户模式”读完这篇文章你将能做出一个真正“认识用户”的智能体。一、问题重现没有记忆的机器人 vs 有记忆的机器人1.1 没有数据库的智能体用户“我喜欢喝冰美式。”机器人“好的已记住。”其实没记住第二天用户“推荐一杯咖啡。”机器人“您喜欢什么口味的呢”用户“昨天不是说了吗”机器人“抱歉我不记得了……”1.2 有数据库的智能体用户“我喜欢喝冰美式。”机器人调用数据库节点把用户ID、偏好类型、偏好值存入数据库。第二天用户“推荐一杯咖啡。”机器人从数据库读取偏好 → 发现“冰美式” → 回复“根据您的喜好推荐冰美式今天加一份浓缩如何”这才是真正的“个性化助手”。二、数据库节点的核心概念在Coze中数据库节点允许工作流读写一个内置的数据库。你不需要自己搭建MySQL、写API所有操作都在Coze界面完成。2.1 数据表类似Excel的一张表有固定的列字段。例如一张user_preferences表可以包含字段名类型说明user_id字符串用户的唯一标识Coze自动提供pref_key字符串偏好键名如“coffee_style”pref_value字符串偏好值如“冰美式”updated_at时间最后更新时间2.2 单用户模式 vs 多用户模式模式说明适用场景单用户模式用户只能读写自己创建的数据记账、待办、个人偏好多用户模式用户可以读写所有数据公共留言板、共享黑名单、全局配置简单判断如果数据是“私人的”用单用户如果是“公开的”用多用户。2.3 关键用户ID自动注入在单用户模式下你不需要手动传递user_id。Coze会自动识别当前对话的用户写入时自动带上他的ID查询时只返回他自己存的数据。这是数据库节点最智能的地方。三、实战案例一记住用户的咖啡偏好3.1 创建数据表1. 创建一个智能体命名为咖啡助手。2. 进入编辑界面找到 “数据库” 模块 → 点击 “添加表”。3. 选择 “自定义数据表”。— 表名称user_preferences小写字母下划线— 表描述存储用户的个性化偏好— 数据模式单用户模式每个人只能看到自己的设置4. 添加字段字段名类型是否必要说明pref_key字符串✅偏好键如“coffee_style”pref_value字符串✅偏好值如“冰美式”updated_at时间✅最后更新时间点击保存。3.2 创建工作流写入偏好1. 新建工作流save_preference。2. 开始节点接收两个输入参数— key字符串必要— value字符串必要3. 数据库节点写入— 操作类型插入记录或“更新或插入”如果存在则覆盖— 选择表user_preferences— 字段映射— pref_key ← {{key}}— pref_value ← {{value}}— updated_at ← 选择“当前时间”— 注意不需要填user_idCoze自动处理。4. 结束节点回复“已记住您的偏好{{key}} {{value}}”。3.3 创建工作流读取偏好1. 新建工作流get_preference。2. 开始节点接收一个输入参数key字符串必要。3. 数据库节点查询— 操作类型查询记录— 选择表user_preferences— 筛选条件pref_key {{key}}— 限制条数14. 大模型节点根据查询结果回复。— 提示词如果查询结果不为空输出“根据您的偏好推荐{{pref_value}}”否则回复“您还没有设置偏好请告诉我。”5. 结束节点输出大模型节点的回答。3.4 在智能体中调用— 在咖啡助手的人设里写当用户说“我喜欢xxx”时调用save_preference工作流key设为“coffee_style”value设为用户说的内容。当用户问“推荐咖啡”时调用get_preference工作流key为“coffee_style”。— 测试— 用户“我喜欢冰美式” → 机器人“已记住您的偏好”— 用户“推荐咖啡” → 机器人“根据您的偏好推荐冰美式”跨对话测试刷新页面重新打开对话再问“推荐咖啡”机器人依然记得。成功四、实战案例二记录用户反馈多用户模式如果你想让所有用户提交的反馈都存到一起方便你后续查看需要用多用户模式。4.1 创建反馈表1. 添加新表feedbacks。2. 数据模式多用户模式所有人都能写入你也能看到所有记录。3. 字段字段名类型说明user_id字符串提交反馈的用户IDCoze自动记录content字符串反馈内容created_at时间提交时间4.2 创建工作流保存反馈1. 工作流save_feedback。2. 开始节点接收content。3. 数据库节点插入记录— 操作类型插入记录— 表feedbacks— 字段映射content ← {{content}}created_at ← 当前时间— user_id 自动填充。4. 结束节点回复“感谢您的反馈”4.3 创建工作流查看所有反馈仅你可见这个工作流可以加密码保护或者只在你自己的管理后台调用。1. 工作流list_feedbacks。2. 开始节点无参数。3. 数据库节点查询所有记录不设筛选条件按created_at倒序。4. 结束节点输出记录列表可以用卡片展示。注意多用户模式下任何用户都可以读写所有数据。如果不想让普通用户看到别人的反馈就不要把这个工作流暴露给用户只在你自己的调试界面使用。五、数据库节点的“测试库”与“正式库”陷阱5.1 现象你在工作流试运行时写入了一条数据但在智能体对话中查询却找不到。5.2 原因Coze把工作流试运行和智能体正式发布后的对话分成两个完全隔离的数据库— 测试库工作流编辑页中点击“试运行”时数据写入测试库。— 正式库智能体发布后用户在豆包/飞书里对话时数据写入正式库。两者互不干扰。5.3 解决方法— 测试时如果想验证数据库读写必须发布智能体然后在真实的对话中测试。— 或者在“试运行”时手动在数据库表里查看测试库的数据工作流编辑页的“数据库”菜单能看到测试库内容。六、避坑清单问题原因解决方法写入成功但查询不到单用户模式下当前对话用户和写入时的用户不一致Coze自动识别用户一般不会错检查是否切换了账号多用户模式下用户看到别人数据不应该暴露查询工作流给用户只把“写入”工作流给用户“查询”只用于后台字段类型不匹配比如写入时传了字符串但表定义是数字确保工作流传入的参数类型和表字段一致时间字段总是1970年忘记设置“当前时间”在数据库节点映射时选择“当前时间”而不是引用变量更新记录时覆盖了不该覆盖的使用了“更新或插入”但筛选条件不唯一确保筛选条件能唯一定位一条记录七、最后今天这篇我们学会了用数据库节点给机器人装上“长期记忆”。— 单用户模式存储个人偏好、记账、待办。— 多用户模式收集反馈、公共配置、黑名单。掌握了数据库节点你的机器人就从“一问一答的无状态玩具”升级成了“认识用户、持续学习的智能伙伴”。你打算用数据库节点实现什么功能评论区告诉我我可以帮你设计具体的数据表结构。下一篇预告很多人问“怎么让机器人主动提醒我比如每天8点推送新闻”——下一篇我们讲触发器实战让机器人变成你的私人闹钟。如果觉得本文有帮助点赞、收藏、关注更新会第一时间推送。柒柒2026年6月