簡體   English   中英

如何在php中准備INSERT INTO SELECT查詢?

[英]How can I prepare an INSERT INTO SELECT query in php?

我正在嘗試將購物車中的產品(從cart_product)復制到order_product表中

通過將列名准備為order_id的值,此查詢可以以此方式工作嗎

    // Create the order

    $order_id = $this->order->store();

    // Copy products from cart and assign them to the order

    $req = "INSERT INTO order_product (order_id, product_id)
    SELECT :order_id, product_id, 
    FROM cart_product, cart
    WHERE cart.user_id = :id";

    $bind = array(
        "id" => $_SESSION['id'],
        "order_id" => $order_id
    );

    return  $this->Sql($req);

我使用的是SQL函數來的微型框架。

我希望查詢變成這樣

INSERT INTO order_product (order_id, product_id)
SELECT 3, product_id, 
FROM cart_product, cart
WHERE cart.user_id = 2

解決方案:問題是由FROM行末尾的逗號引起的。 這是導致問題的原因,而不是導致無法將列綁定為值的原因。 我沒有錯誤消息,因為我使用的是微型專有框架。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM