如何在MySql中为特定数据库创建触发器?

如何在MySql中为特定数据库创建触发器?,mysql,Mysql,我使用的是MySql 5.5数据库,我有test1、test2、test3和test4数据库。 test1数据库有3个表(学生、员工、培训师)。 test2数据库有3个表(表1、表2、表3)。 现在我的问题是 如何为test1数据库应用触发器?因此,听到触发器适用于学生、员工、培训师表 请给出解决方案。您可以在特定数据库中的特定表上创建触发器 请参阅以了解如何执行此操作。您可以在特定数据库中的特定表上创建触发器 请参阅以了解如何执行此操作。创建触发器的一般语法为: 为每行触发器语句在tbl\U名

我使用的是MySql 5.5数据库,我有test1、test2、test3和test4数据库。 test1数据库有3个表(学生、员工、培训师)。 test2数据库有3个表(表1、表2、表3)。 现在我的问题是

如何为test1数据库应用触发器?因此,听到触发器适用于学生、员工、培训师表


请给出解决方案。

您可以在特定数据库中的特定表上创建触发器


请参阅以了解如何执行此操作。

您可以在特定数据库中的特定表上创建触发器


请参阅以了解如何执行此操作。

创建触发器的一般语法为: 为每行触发器语句在tbl\U名称上创建触发器名称触发器时间触发器事件

在下面的示例中,我们在Emp表中插入任何记录之前更新Employee表的Salary列。例如:

mysql>从Employee中选择*

+-----+---------+----------+-------------------+--------+-------+

| Eid | Ename |城市|称号|工资|津贴|

+-----+---------+----------+-------------------+--------+-------+

|1 |拉胡尔|德里|经理| 10300 | 853|

|2 |高拉夫|孟买|副经理| 10300 | 853|

|3 | Chandan | Banglore |队长| 15450 | 999|

|5 |塔潘|浦那|开发商| 20600 | 1111|

|6 |阿马尔|钦奈|开发商| 16000 | 1124|

|7 |桑托什|德里|设计师| 10000 | 865|

|8 |苏曼|浦那|网页设计师| 20000 | 658|

+-----+---------+----------+-------------------+--------+-------+

一组7行(0.00秒)

mysql>分隔符//

mysql>在Emp上插入之前创建触发器ins\U 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',15000658)

查询正常,1行受影响(0.05秒)

mysql>从Employee中选择*

+-----+---------+----------+-------------------+--------+-------+

| Eid | Ename |城市|称号|工资|津贴|

+-----+---------+----------+-------------------+--------+-------+

|1 |拉胡尔|德里|经理| 10000 | 853|

|2 |高拉夫|孟买|副经理| 10000 | 853|

|3 | Chandan | Banglore |队长| 15150 | 999|

|5 |塔潘|浦那|开发商| 20300 | 1111|

|6 |阿马尔|钦奈|开发商| 15700 | 1124|

|7 |桑托什|德里|设计师| 9700 | 865|

|8 |苏曼|浦那|网页设计师| 19700 | 658|

+-----+---------+----------+-------------------+--------+-------+


集合中有7行(0.00秒)

创建触发器的一般语法为: 为每行触发器语句在tbl\U名称上创建触发器名称触发器时间触发器事件

在下面的示例中,我们在Emp表中插入任何记录之前更新Employee表的Salary列。例如:

mysql>从Employee中选择*

+-----+---------+----------+-------------------+--------+-------+

| Eid | Ename |城市|称号|工资|津贴|

+-----+---------+----------+-------------------+--------+-------+

|1 |拉胡尔|德里|经理| 10300 | 853|

|2 |高拉夫|孟买|副经理| 10300 | 853|

|3 | Chandan | Banglore |队长| 15450 | 999|

|5 |塔潘|浦那|开发商| 20600 | 1111|

|6 |阿马尔|钦奈|开发商| 16000 | 1124|

|7 |桑托什|德里|设计师| 10000 | 865|

|8 |苏曼|浦那|网页设计师| 20000 | 658|

+-----+---------+----------+-------------------+--------+-------+

一组7行(0.00秒)

mysql>分隔符//

mysql>在Emp上插入之前创建触发器ins\U 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',15000658)

查询正常,1行受影响(0.05秒)

mysql>从Employee中选择*

+-----+---------+----------+-------------------+--------+-------+

| Eid | Ename |城市|称号|工资|津贴|

+-----+---------+----------+-------------------+--------+-------+

|1 |拉胡尔|德里|经理| 10000 | 853|

|2 |高拉夫|孟买|副经理| 10000 | 853|

|3 | Chandan | Banglore |队长| 15150 | 999|

|5 |塔潘|浦那|开发商| 20300 | 1111|

|6 |阿马尔|钦奈|开发商| 15700 | 1124|

|7 |桑托什|德里|设计师| 9700 | 865|

|8 |苏曼|浦那|网页设计师| 19700 | 658|

+-----+---------+----------+-------------------+--------+-------+


集合中有7行(0.00秒)

我知道如何为数据库中的每个表应用触发器。。但是我想为每个数据库而不是每个表创建触发器。。那么这是可能的还是不可能的?@user1557627-这没有任何意义。触发器发生在特定表上的操作(插入、删除、更新)时。我知道如何为数据库中的每个表应用触发器。。但是我想为每个数据库而不是每个表创建触发器。。那么这是可能的还是不可能的?@user1557627-这没有任何意义。在特定表上发生操作(插入、删除、更新)时会发生触发器。是否可以应用?