gpt4 book ai didi

php 如果表存在则删除 mysql

转载 作者:行者123 更新时间:2023-11-29 08:49:59 25 4
gpt4 key购买 nike

我正在考虑在 php mysql 中使用一个小脚本来删除数据库中存在但更新中不存在的行。请让我知道我的方向是否正确。

这就是发生的事情......

一个上传的文件,我从中获取所有数据的信息,然后将其插入到 mysql 数据库中,或者更新(如果已经存在)。我想做的是,如果上传的文件在数据库中没有内容(因为它已更新),则删除该行。

数据库中的AGENT_REF为主键

$sql_archeck = mysql_query ("SELECT AGENT_REF FROM epsales");
while($check = mysql_fetch_array($sql_archeck) {
if ($check["AGENT_REF"] == $agentref) {

}
}

我希望我已经解释清楚了,我今天脑子不太好..哈哈感谢您抽出宝贵的时间,非常感谢您的帮助!

更新

例如,假设上传的文件的信息如下:

AGENT_REF = 1
AGENT_REF = 2
AGENT_REF = 3
AGENT_REF = 5

但在数据库中:

AGENT_REF = 1
AGENT_REF = 2
AGENT_REF = 3
AGENT_REF = 4
AGENT_REF = 5

我想从数据库中删除 AGENT_REF 4 :)希望此更新对您有所帮助,谢谢!

最佳答案

array_diff() 是你的 friend 。

http://php.net/manual/en/function.array-diff.php

<?php

$new_refs = array(
/* load your new references into this array - you haven't said how you're managing them in your original post */
);

$sql_archeck = mysql_query ("SELECT AGENT_REF FROM epsales");
$check = mysql_fetch_array($sql_archeck);

$dead_keys = array_diff($check, $new_refs);


/* $dead_keys now holds a list of keys which don't exist in the new data and you can delete them */

?>

编辑:在阅读其他帖子上解释完整要求的评论后,将帖子从 MYSQL 的 ON DUPLICATE KEY UPDATE 答案更改为 PHP array_diff() 解决方案...

关于php 如果表存在则删除 mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11520238/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com