在不知道id的情况下从mysql表中删除项目

时间:2013-06-30 12:31:44

标签: mysql

对于我的项目,我正在创建一个销售订单页面,其中包含网格上的订单商品。因此,当用户添加新项目并点击保存时,所选项目的ID将保存在DB上。

除了已删除的项目外,一切正常,因为我们没有在保存时传递任何已删除的项目。

实施例

recordId, product_id, is_deleted

目前我正在遍历这些项目并检查它是否存在于DB,Pseudo code

IF( ITEM_EXISTS  ){

 //update

}
else{

 //Insert 

}

但它不会涵盖页面上任何已删除的项目。

请帮帮我。

1 个答案:

答案 0 :(得分:0)

尝试在mysql中使用not in

像这样

 UPDATE table_name 
    SET table_name.is_deleted = true 
    where 
    table_name.recordId not in ( current ids ) 
    and 
    parent_id = your_master_table_id

此处current_id来自您的网页,应以逗号分隔。Parent_Id是您的sales_order表主键。

希望它有所帮助。