PHP判断sql语句是否执行成功
2个回答
展开全部
PHP中如果不判断sql执行是否成功,就弹出成功提示框,往往会造成虚假注册,实际表单内容没有提交进入数据库。判断sql语句是否执行成功主要用到的函数为mysql_affected_rows() 返回前一次 MySQL 操作所影响的记录行数。
执行成功,则返回受影响的行的数目,如果最近一次查询失败的话,函数返回 -1。 如果最近一次操作是没有任何条件(WHERE)的 DELETE 查询,在表中所有的记录都会被删除,但本函数返回值在 4.1.2 版之前都为 0。 当使用 UPDATE 查询,MySQL 不会将原值与新值一样的列更新。这样使得 mysql_affected_rows() 函数返回值不一定就是查询条件所符合的记录数,只有真正被修改的记录数才会被返回。 下面看两个例子:例一:
$rs=MySQL_query($sql);
if(mysql_affected_rows())
echo "sql执行成功";elseecho "sql执行失败";例二:<?php/* 连接数据库 */
mysql_pconnect("localhost", "mysql_user", "mysql_passWord") or
die ("Could not connect" . mysql_error());
mysql_select_db("mydb");
/* Update 记录 */
mysql_query("UPDATE mytable SET used=1 WHERE id < 10");
执行成功,则返回受影响的行的数目,如果最近一次查询失败的话,函数返回 -1。 如果最近一次操作是没有任何条件(WHERE)的 DELETE 查询,在表中所有的记录都会被删除,但本函数返回值在 4.1.2 版之前都为 0。 当使用 UPDATE 查询,MySQL 不会将原值与新值一样的列更新。这样使得 mysql_affected_rows() 函数返回值不一定就是查询条件所符合的记录数,只有真正被修改的记录数才会被返回。 下面看两个例子:例一:
$rs=MySQL_query($sql);
if(mysql_affected_rows())
echo "sql执行成功";elseecho "sql执行失败";例二:<?php/* 连接数据库 */
mysql_pconnect("localhost", "mysql_user", "mysql_passWord") or
die ("Could not connect" . mysql_error());
mysql_select_db("mydb");
/* Update 记录 */
mysql_query("UPDATE mytable SET used=1 WHERE id < 10");
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询