PHP 板


LINE

看板 PHP  RSS
Hi All: $up_sql="update db set value=1 where id='123' and sn='2345'"; $up_exec=pg_exec($server_link,$up_sql); $up_result=pg_affected_rows($up_exec); if($up_result==0) { $ins_sql="insert into db(id,sn) values('234','aaa')"; $ins_exec=pg_exec($server_link,$ins_sql); } 以上是我资料更新或新增的程式,正常来说,当 db里面有 id='123',sn='2345'的时候 pg_affected_rows的值并不会等於0 所以我用这种方式来判断资料是要更新或是新增, 可是观察了一阵子,发现还是有部分的资料,会 被重复写入,不知道这样子是出了什麽问题,请 各位指点一下,拜托... 程式:PHP DB : POSTGRESQL --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 118.169.170.134
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/PHP/M.1416538648.A.274.html
1F:推 alog: db资料是有更新才affected 不是你下完指令执行成功就算 11/21 11:10
2F:→ alog: 如果你要避免部分资料进入资料库 要做好检查 11/21 11:11
3F:→ alog: 适时配合lock相关指令做搭配 以及你要利用unique key避免重 11/21 11:12
4F:→ alog: 复写入 11/21 11:12
5F:→ joedenkidd: 应该是说问题会发生在下一次相同资料写入的时候 11/21 12:34
6F:推 alog: 简单作法 挑几个你认为不该重复的栏位资料 11/21 12:46
7F:→ alog: 例如 name cellphone sexual 11/21 12:47
8F:→ alog: 然後你新增一个名为digest的资料栏位 长度用32 char 11/21 12:49
9F:→ alog: 并设定他为 unique key 11/21 12:49
10F:→ alog: 接着你新增资料的时候 记得产生一组字串 11/21 12:51
11F:推 alog: $digest = md5(json_encode(array($name,$cellphone,$sexual 11/21 12:52
12F:→ alog: ))); 11/21 12:52
13F:→ alog: 把这整组资料放进资料库里 11/21 12:53
14F:推 alog: 有重复的 资料库会自己挡下来 11/21 12:54
15F:推 LaPass: unique key 我记得可以同时设在两个键上 11/21 13:06
16F:→ LaPass: 把两个栏位当成一组,去判断两者都一样才当一样,这样 11/21 13:07
17F:→ joedenkidd: alog大大说的,是一个好方式,db已有资料,以後可用~ 11/21 19:39
18F:→ joedenkidd: LaPass大大,unique key分别设定两个栏位ok,但资料库 11/21 19:40
19F:→ joedenkidd: 中,id会重复,sn也会,所以只有那个条件在一起来能 11/21 19:40
20F:→ joedenkidd: 得到唯的一值,怪的只是不知道为什会发生这种问题 11/21 19:45
21F:推 xdraculax: 一楼就说啦,那个只数有更新,本来就=1就不算了 11/22 00:57
22F:→ xdraculax: mysql可以用replace into pg 不熟 11/22 01:10
23F:推 LaPass: 我的意思是,设定 id+sn unique这样,「两个一组」 11/22 01:29







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:e-shopping站内搜寻

TOP