数据库内遇到相同的数据,就覆盖,代码如何实现,用什么函数

kahn178 2009-07-27 05:26:03
数据库内遇到相同的数据,就覆盖,代码如何实现,用什么函数

向数据库内插入数据,以URL为主銉,当遇到相同的URL时,就覆盖相同的数据,也就是不再另起一行,应该用什么函数实现呢?
...全文
102 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
foolbirdflyfirst 2009-07-27
  • 打赏
  • 举报
回复
要么先判断再insert,要么如2楼所说.
ps:一般很少将某个char类型字段设为pk的,unique就行了吧
blueforyou 2009-07-27
  • 打赏
  • 举报
回复
如果是主键的话,可以这样(例子):
if(mysql_query("insert into test(url,...) values($url,..)")){
//成功
}else{
mysql_query("update test set ...=... where url='$url'");
}
dzxccsu 2009-07-27
  • 打赏
  • 举报
回复
先判断数据库中有无URL,有就UPDATE,无就INSERT
Gdj 2009-07-27
  • 打赏
  • 举报
回复
首先,把那个数据列设为unique键或主键。然后插入数据时不使用insert into ...,而是使用replace (...) values (...)
程序猿之殇 2009-07-27
  • 打赏
  • 举报
回复
1 插入之前先查询.
2 再者说,因为URL是主键,不能重复,是无法再插入新的记录的.所要检查插入失败后更新记录.

21,893

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧