我使用的是MySql 5.5数据库,我有test1、test2、test3和test4数据库。test1数据库有3个表(学员、员工、培训师)。test2数据库有3个表(table1,table2,table3)。现在我的问题是
如何对test1数据库应用触发器?因此,听到触发器应用于学员表、员工表、培训员表。
请给我一个解决方案。
发布于 2012-07-27 20:41:07
CREATE TRIGGER的一般语法为: CREATE TRIGGER trigger_name trigger_time trigger_event ON tbl_name FOR EACH ROW trigger_statement
在下面的示例中,在Emp表中插入任何记录之前,我们将更新Employee表的Salary列。示例:
mysql> SELECT * FROM Employee;
+-----+---------+----------+-------------------+--------+-------+
| Eid |名称|城市|名称|工资|津贴|
+-----+---------+----------+-------------------+--------+-------+
|1|拉胡尔|德里|经理| 10300 | 853
|2|高拉夫|孟买|经理助理| 10300 | 853
|3| Chandan | Banglore |领队| 15450 | 999
|5| Tapan | Pune |开发者| 20600 | 1111
|6| Amar | Chennai |开发者| 16000 | 1124
|7|桑托什|德里|设计师| 10000 | 865
|8| Suman | Pune | Web Designer | 20000 | 658
+-----+---------+----------+-------------------+--------+-------+
集合中的7行(0.00秒)
mysql>分隔符//
mysql>在Emp上插入之前创建触发器ins_trig
-> FOR EACH ROW
-> BEGIN
-> UPDATE Employee SET Salary=Salary-300 WHERE Perks>500;
-> END;
-> //查询正常,0行受影响(0.01秒)
mysql>分隔符;
mysql>插入emp值(9,'Rajesh','Delhi','Developer',15000,658);
查询正常,1行受影响(0.05秒)
mysql> SELECT * FROM Employee;
+-----+---------+----------+-------------------+--------+-------+
| Eid |名称|城市|名称|工资|津贴|
+-----+---------+----------+-------------------+--------+-------+
|1|拉胡尔|德里|经理| 10000 | 853
|2|高拉夫|孟买|经理助理| 10000 | 853
|3| Chandan | Banglore |领队| 15150 | 999
|5| Tapan | Pune |开发者| 20300 | 1111
|6| Amar | Chennai |开发者| 15700 | 1124
|7|桑托什|德里|设计师| 9700 | 865
|8| Suman | Pune | Web Designer | 19700 | 658
+-----+---------+----------+-------------------+--------+-------+
集合中的7行(0.00秒)
发布于 2012-07-27 20:37:05
在特定数据库中的特定表上创建触发器。
请参阅triggers以了解这是如何完成的。
https://stackoverflow.com/questions/11687821
复制相似问题