我试图创建一些代码来自动删除我的mysql表中的所有记录,我已经做了一个旧的项目,但在这种情况下,当我使用完全相同的脚本,它不工作.我试图使它删除后60秒只是为了测试,但我必须做一些错误的东西。
所有的帮助是非常感激
我的代码。
<?php
function apaga(){
$dbconn = mysqli_connect("localhost", "root", "", "fct");
if($dbconn->connect_error){
die("Falha ao conectar ao servidor: ".$dbconn->connect_erro);
}
$queryselect=$dbconn->query("SELECT * FROM mostra1 ")or die(mysqli_error($dbconn));
while($row=$queryselect->fetch_assoc()){
$id=$row['id'];
$sql= "DELETE * FROM mostra1 WHERE `data` < (NOW() - INTERVAL 60 SECONDS)";
mysqli_query($dbconn,$sql);
}
}
apaga();
?>
试试这个伙计:)
<?php
function apaga(){
$conexao = mysqli_connect("localhost", "root", "", "fct");
if($conexao->connect_error){
die("Falha ao conectar ao servidor: ".$conexao->connect_erro);
}
$queryselect=$conexao->query("SELECT * FROM mostra1")or die(mysqli_error($conexao));;
while($row=$queryselect->fetch_assoc()){
$id=$row['id'];
$sql= "DELETE FROM mostra1 WHERE data < (NOW() - INTERVAL 1 MINUTE)";
mysqli_query($conexao,$sql);
}
}
apaga();
?>
你的数据库可能在安全模式下运行。 试着在删除前添加相当于这个SQL的PHP脚本。
set SQL_safe_updates = 0;
然后在删除之后。
set SQL_safe_updates = 1;