MySQL 如何检测MySQL中使用查询时是否触发了ON UPDATE事件?

MySQL 如何检测MySQL中使用查询时是否触发了ON UPDATE事件?

您可以利用row_count()进行检测。如果row_count()返回1,则表示它是一条新记录。如果返回2,则表示使用查询触发了ON UPDATE事件。以下是语法 −

select row_count();
Mysql

让我们首先创建一个表 −

mysql> create table DemoTable1512
   -> (
   -> Value int ,
   -> UNIQUE(Value)
   -> );
Query OK, 0 rows affected (0.60 sec)
Mysql

使用插入命令向表中插入一些记录 −

mysql> insert into DemoTable1512 values(90) on duplicate key update Value=Value+10;
Query OK, 1 row affected (0.09 sec)
Mysql

现在,您可以通过上述查询来检查on update事件是否被触发−

mysql> select row_count();
Mysql

它将生成以下输出 −

+-------------+
| row_count() |
+-------------+
|           1 |
+-------------+
1 行记录(0.00 sec)
Mysql

它返回1,表示没有。

现在,您可以使用insert命令再次将相同的记录插入表中 −

mysql> insert into DemoTable1512 values(90) on duplicate key update Value=Value+10;
Query OK, 2 rows affected (0.12 sec)
Mysql

现在,您可以通过上述查询来检查on update事件是否被触发−

mysql> select row_count();
Mysql

它将生成以下输出 −

+-------------+
| row_count() |
+-------------+
|           2 |
+-------------+
1 行记录(0.00 sec)
Mysql

阅读更多:MySQL 教程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册