Php Insert Ignore-有没有办法知道语句是否被忽略?MYSQL
如果插入了行,我想执行代码。是否有一些时间值可以返回,告诉我是否插入或忽略了语句 编辑:现在,“要执行的代码”始终执行-即使在忽略实例上mysql\u受影响的\u行()将返回1或0,如果插入发生,则返回1Php Insert Ignore-有没有办法知道语句是否被忽略?MYSQL,php,mysql,sql,Php,Mysql,Sql,如果插入了行,我想执行代码。是否有一些时间值可以返回,告诉我是否插入或忽略了语句 编辑:现在,“要执行的代码”始终执行-即使在忽略实例上mysql\u受影响的\u行()将返回1或0,如果插入发生,则返回1 $sql_insert = "INSERT IGNORE ....."; if(mysql_query($sql_insert,$link) or die("Insertion Failed:" . mysql_error())) { //code to execute }
$sql_insert = "INSERT IGNORE .....";
if(mysql_query($sql_insert,$link) or die("Insertion Failed:" . mysql_error()))
{
//code to execute
}
谢谢-接受这个答案。快速提问-不管mysql_查询是否在if语句中,对吗?-因为它每次都会通过(mysql\u只检查语句是否运行\的查询是有效的,不会告诉您insert vs IGNORE需要询问什么,除了重复主键的情况外,是否还有其他实例受影响的行将返回零?或者在这种情况下,每0个受影响的行都被视为重复主键的情况?参考:
if(mysql_query($sql_insert,$link) or die("Insertion Failed:" . mysql_error()))
{
if(mysql_affected_rows($link)==1){
//insert took place
}else{
//no insert
}
}