作者PTTLSboy (阿铯)
看板PHP
标题[请益] 如何一次产生两个流水号
时间Mon Sep 24 19:35:45 2012
我的ID是流水号产生的,我有另一个栏位的初值要跟流水号一样
但试了不能一次把流水号给两个栏位
查了GOOGLE查不出来,可能关键字方向不对
请前辈给我一个方向,谢谢!
-----
我只知道最笨的方法:
就是另一栏位先NULL,等流水号出来再去抓最近的INSERT_ID,再用UPDATE填上去
--
派大星:多少钱?
蟹老板:5块钱
派大星:(掏口袋) 我只有7块Q_Q
蟹老板:成交!
派大星:派大星啊! 你真的好会杀价
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 123.0.232.61
1F:→ liaosankai:可能要先麻烦你把DB的SQL结构图贴上来,比较好了解问题 09/24 20:53
是一个留言及回覆的资料表,'reply'初值是接流水ID,如果'reply'=流水ID代表没回覆
'reply'如果不等於流水ID那则是指向回覆的那篇ID
这样子select就以reply排序,按顺序显示在画面上了
推 LaPass:大概也只能这样了吧....
好巴
09/24 21:05
2F:→ ousapas:trigger 09/24 21:12
3F:→ MOONRAKER:这样最简单 没什麽笨的 不是所有SQL的事都要一次做完 09/24 22:20
4F:→ MOONRAKER:顶多前後用transaction把他围起来 保证不会中途写入失败 09/24 22:21
谢谢各位
trigger跟transaction看了还是不太明白,我想我先用最简单的方法好了!
※ 编辑: PTTLSboy 来自: 123.0.232.61 (09/24 23:15)
5F:推 alpe:mysql 就只能写2赐了 09/24 22:54
6F:推 dio833:update xx set reply=id where reply is null and ... 09/24 23:58
7F:→ MOONRAKER:transaction是用来保证两个或多个指令同时正确执行 09/25 11:22
8F:→ MOONRAKER:如果一个失败其他的也不会执行 不过只对InnoDB有效 09/25 11:22
9F:→ MOONRAKER:所以先知道有这回事就好 除非load很高否则很少会有问题 09/25 11:25
感谢你还回来解释:))
※ 编辑: PTTLSboy 来自: 123.0.232.61 (09/25 20:21)