求解决mysql php 问题,数据插入重复

php 插入数据库,先检测数据存在否,存在删除再插入,现在问题是这样的,由于数据量比较大,当同时提交两个页面,将会造成数据的重复!原因可能如下: 理论的逻辑是 删除 插入,但实际的数据库执行顺序却是,两次操作的删除同时执行或挨在一起执行了,插入操作挨在一起执行咯,所以数据插入重复! 存储过程 也不能解决这个问题!不能使用事务!

锁表是很好的选择,不用事物机制是很难解决这件事,
也可以设置界面操作排队延迟(即两个界面同时提交,根据时间戳排队),在PHP代码中实现 使用session等技术实现 比较麻烦些,
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-06-26
mysql> INSERT INTO table (a,b,c) VALUES (1,2,3)
-> ON DUPLICATE KEY UPDATE c=c+1;
-- 重复键出现则更新。
-- REPLACE INTO 直接替换已有纪录。
第2个回答  2012-06-24
锁表

我用php获取到mysql的数据后,发现数据重复了
你用的是mysql_fetch_array吧,使用mysql_fetch_assoc,它仅仅返回关联数组,不会像mysql_fetch_array一样在关联索引之外还加上数字索引

mysql+php做留言系统时,有个表,id 是自增的,当我把id数据删除一条再插入...
数据库的自增就是存在这种情况,如果不想要自增,你就每次判断最大值,然后插入当前值加1,出现不连续的情况,你就要去判断,要再次插入缺失的ID,这个比较浪费资源,我猜测,你只所以烦恼出现这个不连续的ID号,是因为你显示的出来的列表出现不连接,你编号使用的是ID,你可以用页数和每页显示的条数来...

php 如何在导入Excel数据时检查Mysql数据库内容是否存在,避免重复录入...
sql=mysql_query("select distinct Code from test ",$conn);sqlvalue=[];while($row=mysql_fetch_array($sql)){ sqlvalue[]=$row['Code'];} 另外 ,可以在建表的时候设置unique index,来彻底避免插入重复记录,如果没过滤好插入重复记录的时候,系统会直接报错 ...

php + mysql 批量删除旧数据,插入新数据
把INSERT替换为REPLACE就可以,INSERT是插入,遇到重复的保留或者报错,REPLACE遇到重复的就替换。

用jquery和ajax php将数据插入到mysql数据库,为什么插入一条就再不能...
为了避免这种情况,例如可以向 URL 添加一个唯一的 ID: xmlhttp.open("GET", "reg.php?t="+Math.random(), true);我看了你上面的dt=+new Date().getTime(),我验证了一下,如下图所示:为什么getTime()得到的不是真正的日期呢?如果不是缓存问题,那么就可能是数据库设置方面。

怎么解决PHP报错 系统不支持Mysql 与数据库有关?
```如果未启用,您需要启用这些扩展,并重新启动Web服务器。2. 更新PHP和MySQL版本:确保您正在使用最新版本的PHP和MySQL。旧版本可能会导致与数据库连接的问题。更新到最新版本可以修复潜在的兼容性问题。3. 检查数据库连接信息:确保您的PHP代码中的数据库连接信息(如主机名、用户名、密码、数据库名称...

MySQL数据库如何跨数据库插入数据,我现在要同时向2个库的2个表插入相同...
连接不同的数据库只能使用不同的数据连接。你再建一个数据连接到另外一个库,执行插入。

php循环插入数据到mysql问题。。完成此问题小弟倾家荡产了
虽然不太确定你的问题,提供下我的想法吧。。。换句话说,一切操作以数组来循环的。那循环次数就是数组的长度;循环执行SQL语句,语句里的内容,是由循环索引决定;for($i : $shuzu){ sql=mysql_query("INSERT INTO test (aid,typeid,username,shuzu) Value('1','2','3',`shuzu[$i]`)")...

我用php向mysql中插入数据的时候,英文和数字插入很正常。但是中文只能...
从“英文和数字插入很正常。但是中文只能插入一次”的描述信息,以及代码来看,代码本身没有错误之处,出错误的原因,据经验判断,可能在数据库编码、网页编码、网页文件编码三者不一致上。假设,你的网页文件编码与网页编码都是gb2312,那么你也应该将数据库编码设置为gb2312.

几个关于mysql数据库的问题求解 - PHP进阶讨论
这主要是因为在前端使用count函数进行分页时,这种操作会极大地拖慢页面加载速度。后来,我们通过减少这个表中的数据量来解决这个问题,从而提高了性能。第三个问题是关于查询效率的。如果使用where id = 7这样的条件,数据库只需进行一次查询。然而,当使用limit 6, 1这样的分页条件时,数据库会进行多次...

相似回答