关于mysql触发器,有没有办法实现这样的功能?
CREATE TRIGGER t_insertonlineuser_before_insert
BEFORE INSERT ON online_user_tb
FOR EACH ROW
BEGIN
//伪代码
if exists (select 1 from online_user_tb) then
update online_user_tb;
else
insert online_user_tb
end if;
----------------------------------------------之后不在执行insert语句
END
---------------这样可行吗?
用 instead of insert
MySQL 的触发器无法实现这种功能。
可以按一楼的方法用 INSERT .... ON DUPLICATE KEY UPDATE ...
INSERT INTO table (a,b,c) VALUES (1,2,3)
ON DUPLICATE KEY UPDATE c=c+1;
具体用法和例子可以参考一下官方文档中的说明。
MySQL官方文档 http://dev.mysql.com/doc/refman/5.1/zh/index.html
学习了
看起来不错 mysql不支持?
那只能用版主的方法了
顶一下
使用replace into也可以。
相关问答:
我现在学习MYSQL,问下mysql储存过程如何建立和使用,最好写成$sql="sql语句",$re=mysql_query($sql);谢谢
建议你先自己看一下文档中的例子。
http://dev.mysql.com/doc/refman/5.1/zh/stored-pro ......
我用的like模糊查询,比如mysql的name中有“csdn论坛系统”这几个字,如何在 <input>中查询“csdn 系统”也能出来这个“csdn论坛系统”,我现在是查“csdn”或者“系统”都可以。谢谢各位了!不知道我这么表达 ......
不知道是不是我的xampp有问题,mysql是图形化的!
一个ID组在我的mysql的表里面 2,5,8,7
点了排序,然后用PHP文件连接这个表显示表的信息时,ID的顺序还是不变!应该是2,5,7,8的吧升序排序后!
在PHP文件里 ......
mysql>create book(
->id varchar(20) not null,g
->
以上是在mysql命令行里的操作
在上面中我在倒数第二行多打了一个字母g然后按了回车键,请问从倒数第一行怎么 ......