有两个表 一个为temp 一个为 date 我想要在temp中按id删除一条记录时把 这条记录插入到date表中 在Navicat Lite中定义触发器 希望大虾指教一下不胜感激 在线等
解决方案 »
- linux 环境,连接MYSQL不上,用127.0.0.1可以,但是用localhost连接不上,是什么原因?
- mysql5.0存储过程创建临时表问题,难道是mysql的BUG,急!!
- 什么?? 这是mysql与mssql的区别??
- Mysql有象Foxpro一样的浏览模式吗?
- Mysql 中 Column 'user' not found.的奇怪问题
- phpmyadmin运行报错,找了很多以前的帖子,提到过这个问题,但都没有解决
- MySqlTransaction中的commit(),如果服务器中断未执行到这步,数据会提交吗?
- 关于mysql主从库的问题
- mysql binlog解析
- 更新mysql数据库爆重复数据问题,但是我根本没有这个重复问题,请高人看看
- mysql Navicat Lite触发器
- mysql Navicat Lite触发器
-> id int primary key,
-> col int
-> );
Query OK, 0 rows affected (0.27 sec)mysql> create table `date`
-> (
-> id int,
-> col int
-> );
Query OK, 0 rows affected (0.13 sec)mysql> delimiter //
mysql>
mysql> create trigger trg_temp_bd before delete ON `temp`
-> FOR EACH ROW BEGIN
-> INSERT INTO `date` values(old.id,old.col);
-> END;
->
-> //
Query OK, 0 rows affected (0.11 sec)mysql> delimiter ;
mysql> insert into `temp` values
-> (1,100),
-> (2,200),
-> (3,300),
-> (4,400);
Query OK, 4 rows affected (0.16 sec)
Records: 4 Duplicates: 0 Warnings: 0mysql> select * from `temp` ;
+----+------+
| id | col |
+----+------+
| 1 | 100 |
| 2 | 200 |
| 3 | 300 |
| 4 | 400 |
+----+------+
4 rows in set (0.00 sec)mysql> select * from `date`;
Empty set (0.03 sec)mysql>
mysql> delete from `temp` where id=2 or id=3;
Query OK, 2 rows affected (0.11 sec)mysql> select * from `temp` ;
+----+------+
| id | col |
+----+------+
| 1 | 100 |
| 4 | 400 |
+----+------+
2 rows in set (0.00 sec)mysql> select * from `date`;
+------+------+
| id | col |
+------+------+
| 2 | 200 |
| 3 | 300 |
+------+------+
2 rows in set (0.00 sec)mysql>