0

我正在尝试从 php PDO 在表中进行插入,但我遇到了一些问题,因为我试图同时使用选择和另一个数据。

$stmt = $db->prepare("INSERT INTO subscriptions(id_Event,pushToken,os)
                                                        :idOfEvent, (Select pushToken,os FROM users WHERE deviceUDID = :deviceUDID)");
            $stmt->execute(array(':deviceUDID' => $deviceUDID,':idOfEvent' => $idOfEvent));

但它说我的查询有问题。我不知道如何同时使用选择和数据进行插入。

4

1 回答 1

2

问题出在 SQL 查询语法中,这是错误的。尝试这个:

$stmt = $db->prepare("INSERT INTO subscriptions (id_Event, pushToken, os) 
                        SELECT :idOfEvent, pushToken, os 
                        FROM users 
                        WHERE deviceUDID = :deviceUDID");
$stmt->execute(array(':idOfEvent'   => $idOfEvent,
                     ':deviceUDID'  => $deviceUDID  ));

编辑:在您的 PHP 代码中包装查询,只是为了清楚 PDO 参数。

于 2013-09-02T10:41:42.733 回答