重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
1.最大执行时间问题,解决方法:分批处理逻辑,比如用ID大小分批处理
成都创新互联公司是专业的玉林网站建设公司,玉林接单;提供成都网站制作、成都网站建设、外贸营销网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行玉林网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
2.多字段组合不可重复的设定,解决方法:查看表设计结构,看看有没有此项设定
3.去掉执行语句1,只运行语句2.
定义和用法mysql_affected_rows() 函数返回前一次 MySQL 操作所影响的记录行数。
语法mysql_affected_rows(link_identifier)
参数:
描述link_identifier
必需:
MySQL 的连接标识符。如果没有指定,默认使用最后被 mysql_connect() 打开的连接。如果没有找到该连接,函数会尝试调用 mysql_connect() 建立连接并使用它。如果发生意外,没有找到连接或无法建立连接,系统发出 E_WARNING 级别的警告信息。
说明:
取得最近一次与 link_identifier 关联的 INSERT,UPDATE 或 DELETE 查询所影响的记录行数。
返回值:
执行成功,则返回受影响的行的数目,如果最近一次查询失败的话,函数返回 -1。
如果最近一次操作是没有任何条件(WHERE)的 DELETE 查询,在表中所有的记录都会被删除,但本函数返回值在 4.1.2 版之前都为 0。
当使用 UPDATE 查询,MySQL 不会将原值与新值一样的列更新。这样使得 mysql_affected_rows() 函数返回值不一定就是查询条件所符合的记录数,只有真正被修改的记录数才会被返回。
REPLACE 语句首先删除具有相同主键的记录,然后插入一个新记录。该函数返回的是被删除的记录数加上被插入的记录数。
例子
?php
$con = mysql_connect("localhost","mysql_user","mysql_pwd");
if (!$con)
{
die("Could not connect: " . mysql_error());
}
mysql_select_db("mydb");
mysql_query("DELETE FROM mytable WHERE id 5");
$rc = mysql_affected_rows();
echo "Records deleted: " . $rc;
mysql_close($con);
?
输出:Records deleted: 4
update用mysql_query执行的时候能得到返回值,这个返回值说明了执行是否成功。
然后用mysql_affected_rows判断是否修改了数据
两个判断组合起来用就能满足你的需求了