You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用PHP向MySQL表的已有数组字段中追加值

向MySQL的JSON数组字段追加元素的正确方法

你当前的代码直接用新值覆盖了access字段的原有数组,所以无法实现追加效果。要给JSON格式的数组字段末尾添加元素,需要使用MySQL内置的JSON_ARRAY_APPEND()函数:

正确的SQL语句

UPDATE user SET access = JSON_ARRAY_APPEND(access, '$', '7') WHERE name = '$user';
  • JSON_ARRAY_APPEND参数说明:
    • 第一个参数access:要操作的目标字段
    • 第二个参数'$':指定操作整个数组(JSON路径表达式)
    • 第三个参数'7':要追加到数组末尾的元素

安全提示

你的代码存在SQL注入风险,建议使用预处理语句绑定参数,以避免安全问题。比如PHP中用PDO实现:

$id = '7';
$targetUser = '目标用户名';
$stmt = $pdo->prepare("UPDATE user SET access = JSON_ARRAY_APPEND(access, '$', ?) WHERE name = ?");
$stmt->execute([$id, $targetUser]);

前提确认

确保你的access字段类型为JSON(从你提供的截图来看,字段存储的是标准JSON数组,符合该类型要求)。

内容的提问来源于stack exchange,提问作者Tanvir

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 06:01:00