当mysql数据库发生更新或更改时,我如何通知我的C或C++应用程序
How can i notify my C or C++ application program when an update or changes happens in mysql database
当mysql数据库发生更新或更改时,我如何通知我的C或C++应用程序。有没有专门的图书馆为这个目的服务?
MySQL中没有现成的功能可以做到这一点。但这绝对是可能的。以下不是分步说明,而是的路径。
-
为MySQL创建一个UDF(用户定义函数),它可以做一些您可以用应用程序捕获的事情,例如通过网络发送消息。下面是一个可以发送STOMP消息的UDF示例。我相信你可以调整它来满足你的需求。
-
实现相应的";接收消息";应用程序中的功能。例如,如果UDF通过套接字发送消息,请让应用程序侦听该套接字。
-
创建一个触发器,对您试图捕捉的事件(例如某些更新)进行触发。这个触发器可以从步骤1调用UDF,向应用程序发送消息(由于步骤2,您将收到消息)。
您可以使用unixODBC在unix平台上访问mysql数据库。
为了取消mysql表中的更改,您可以执行以下操作之一根据您的要求。
- 使用数据库触发器来执行脚本或程序(您不需要odbc驱动程序)
- 从您的C/C++程序轮询数据库以检查是否有任何更改
- 编写一个监视器守护进程,用于轮询数据库并向C/C++程序发出信号
相关文章:
- 函数如何通知用户它基于函数原型抛出异常?
- 如何在ECS框架中更新组件数据和通知系统
- 当 I2C 值在C++中发生变化时收到通知
- 如何设计具有不同类型的通知和观察器的观察者模式?
- 当可输入框在窗口中处于活动状态时获得通知的任何方法
- 是否有必要获取锁并在不需要唤醒线程时通知condition_variable?
- 如何在点击通知时捕获用户的点击操作
- 在通知提升间处理条件变量时未按住锁会导致问题
- 通知条件变量后使用互斥锁
- 如何在不设置值的情况下通知 c++ 未来?
- 使用 ISdigit 通知任何检测到的非法字符
- Qt:如何通知对象已建立涉及它的信号槽连接
- 提升进程间named_condition_any不通知
- Windows Toast 通知不适用于 MS CPP 示例代码
- C++ Poco - 如何创建通知队列的向量?
- 当通知迭代器参数初始化为空列表的开头时,list::insert 行为是什么?
- C++ Windows 通知:使用依赖模板名称
- C++ Poco - 如何向特定线程发送通知/消息?
- 通知 Windows 系统应用程序字体已被卸载/删除
- C++应用程序通知 C# 应用程序