作者imntu ()
看板Database
标题[SQL ] 请问if() insert else update
时间Mon Aug 17 23:29:12 2009
请问如果我想把一个人(id=8888)加入资料库里面
但是我不知道是不是以前已经有过他的资料
所以我先查一下是否有这人select count(*)
如果没有的话(@result=0)
就insert
如果已经有就update
代码如下,mysql
-------------------------------------------
set @result=(select count(*) from user_profile where id='8888');
if @result= 0
then (insert user_profile (p_length,p_weight) values ('180','70'));
else (update user_profile set p_length='180' where p_weight='70');
end if
-------------------------------------------
但是一直出现错误 Error Code : 1064
语法错误,但是找遍书籍和网路,找不到解法。
请问有人知道错在哪里吗?
----
刚爬文之後成功。
insert user_profile set p_length='180',p_weight='70',id='8888'
ON DUPLICATE KEY UPDATE p_length='180',p_weight='70';
但是if...else到底错在哪里??
想不通。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 117.32.174.185
※ 编辑: imntu 来自: 117.32.174.185 (08/18 01:18)