首页 > 解决方案 > 我想通过 API 发送多个值对并将它们插入 SQL DB

问题描述

所以,我在这里要做的是我有一个表,其中包含product_id和它price,我想通过 API 发送这些值,但我不知道如何发送它以便可以将它插入数据库。请有人帮我解决这个问题吗?实际上我是新手,我已经尝试了我知道的所有可能的解决方案,但没有运气。最近我尝试将数据从一个表复制到另一个表,因为要插入的数据与其他表中的数据相同,因为(product_id, quantity, price)要插入的数据是order_items表,我将从客户在购物车中订购的数据(product_id, quantity, price)复制cart_items数据只要。这是我在这里尝试使用的 SQL 查询:

INSERT INTO order_items (product_id, quantity, price)
SELECT product_id,quantity,price FROM cart_items
WHERE cart_id IN (SELECT id FROM cart WHERE user_id=1 AND status='active');

此外,当我尝试运行此查询时,它显示:

#1364 - Field 'order_id' doesn't have a default value

我认为这是因为我没有传递任何 order_id 值。如果有任何方法可以通过它,请告诉我。我的方法也可能不正确,所以如果有人可以帮助我,请全神贯注。

这些是我的表:

cart

    #   Name            Type    
    1   id              int(11)         
    2   user_id         int(11)         
    3   status          varchar(50) 
    4   item_count      int(11)         
    5   total           int(11)

cart_items

    #   Name         Type
    1   id           int(11)
    2   cart_id      int(11)
    3   product_id   int(11)    
    4   price        int(11)    
    5   quantity     int(11)

cart_idid购物车表

orders

    #   Name        Type
    1   id          int(11)
    2   user_id     int(11)
    3   total       int(11)
    4   status      varchar(10)
    5   address_id  int(11)
    6   pay_method  varchar(10)

order_items

    #   Name        Type
    1   id          int(11)
    2   order_id    int(11)
    3   product_id  int(11)
    4   quantity    int(11)
    5   price       int(11) 

order_idid来自订单表

标签: phpandroidmysqlrestprepared-statement

解决方案


推荐阅读