我有2个数据库表


  tbl1用户---------- tbl2游戏系统
  uid字段------------- gs_uid字段


这两个表由user_id绑在一起。

现在我希望tbl2仅能更新,并且字段不是必需的..除了gs_uid之外,它们在系统中进行更新。

我唯一的问题是我需要将user_id插入gs_uid。

function game_system()
{
   if(isset($_POST['game_system'])) {


            $user_id = $_SESSION['uid'];
            $motherboard = escape($_POST['motherboard']);
            $processor = escape($_POST['processor']);
            $memory = escape($_POST['memory']);
            $graphics = escape($_POST['graphics']);
            $harddrive = escape($_POST['harddrive']);
            $power = escape($_POST['powersupply']);
            $cooling = escape($_POST['cooling']);
            $towercase = escape($_POST['towercase']);


            $sql = "INSERT INTO gamesystem(gs_uid, motherboard, processor, memory, graphics, harddrive, powersupply, cooling, towercase) ";
            $sql .= "VALUES('{$user_id}','{$motherboard}','{$processor}','{$memory}','{$graphics}','{$harddrive}','{$power}','{$cooling}','{$towercase}') ";
            $result = query($sql);


        }
   }

最佳答案

如果gs_uid是表'gamesystem'的主键,则此字段不应接受空数据。

否则,如果gs_uid不是键,那么此表的主键是什么?如果是UPDATE,则需要指定要更新的行,否则系统将不知道如何更新。

SQL应该如下所示

UPDATE "gamesystem"
SET "gs_uid" = $user_id
WHERE YOUR_PRIMARY_KEY_COLUMN = SPECIFIC VALUE;

10-07 21:07