我有一个用于更新表的 mysql 查询,例如:
$updatetokenquery = "UPDATE `UsersNew` SET `DeviceToken`='".$newdtoken."',"
. "`DeviceInfo`='".serialize($data['DeviceInfo'])."' , `DeviceType`='".strtolower($data['DeviceInfo']['OS'])."'"
. "WHERE `HashedUid` ='".$newUserId."'";
我有另一个表UsersOptStatus
,我需要在同一查询中更新该表的Actionkey
字段
更新
我正在使用下面的查询来更新新表。
$actionkey='loggedin';
$updatetokenquery = "UPDATE `UsersNew`, `UsersOptStatus` SET UsersOptStatus.Id=2, UsersOptStatus.Uid ='".$uid."', UsersOptStatus.CreatedDate=now(), UsersOptStatus.Action_key='".$actionkey."', UsersNew.DeviceToken='".$newdtoken."',"
. "UsersNew.DeviceInfo='".serialize($data['DeviceInfo'])."' , UsersNew.DeviceType='".strtolower($data['DeviceInfo']['OS'])."'"
. "WHERE UsersNew.HashedUid ='".$newUserId."' ";
echo $updatetokenquery;
问题:
最初,当我在 UsersOptStatus 表中输入一些 ID 时,如果我点击 API,数据似乎正在更新。
但是当表为空时,新的记录集不会插入。
手动插入值后:
插入值后,如果我使用 API 运行测试,action_key 字段中的值将会更新。
但是,如果我只是运行 API,表中没有任何值,则不会插入任何记录。
最佳答案
“字段列表”中存在未知列“UsersOptStatus.Action_key”” 请检查UsersOptStatus表中的Action_key列,否则可能有拼写错误
关于mysql - 在单个查询中更新2个表,数据不插入mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53171089/