首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在新表中记录MySQLi查询

问如何在新表中记录MySQLi查询
EN

Stack Overflow用户
提问于 2012-12-14 05:03:38
回答 2查看 385关注 0票数 0

通过使用PHP5以及用于执行MySQL查询的MySQLi类,如何将使用MySQLi::query处理的每个查询记录到当前连接的数据库的新表中?

是否可以像在Java中那样对函数进行一些扩展?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-12-14 05:18:33

如果您使用支持触发器的mysql版本。只需创建一个触发器,这样您就不必使用不必要的业务逻辑来污染代码

http://dev.mysql.com/doc/refman/5.0/en/triggers.html

从MySQL 5.0.2开始包含对触发器的支持。因此,当您部署您的应用程序时,在创建表的同时创建触发器。

票数 1
EN

Stack Overflow用户

发布于 2012-12-14 05:28:02

为日志定义一个表

代码语言:javascript
复制
create table querylog (
tm timestamp,
query varchar(4096));

在执行查询时,将查询字符串记录在此表中

代码语言:javascript
复制
insert into querylog (tm, query)
values(now(), '$query_string')

您可以在每次查询时显式执行此操作,或者在函数my_query中执行此操作,您可以定义和调用instead而不是mysqli_query,或者像@E_p建议的那样,在触发器中执行此操作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13868459

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档