DELETE 触发器c++例程
时间: 2024-04-19 17:20:19 浏览: 99
在C++中,可以使用触发器(Trigger)来在数据库中的表上定义一些自动执行的操作。DELETE触发器是在删除表中的数据时触发的操作。下面是一个简单的DELETE触发器的C++例程:
```cpp
#include <iostream>
#include <mysql/mysql.h>
int main() {
MYSQL* conn;
MYSQL_RES* res;
MYSQL_ROW row;
conn = mysql_init(NULL);
if (!mysql_real_connect(conn, "localhost", "username", "password", "database", 0, NULL, 0)) {
std::cout << "Connection error: " << mysql_error(conn) << std::endl;
return 1;
}
std::string query = "CREATE TRIGGER delete_trigger BEFORE DELETE ON table_name FOR EACH ROW BEGIN "
"INSERT INTO log_table (deleted_id) VALUES (OLD.id); "
"END";
if (mysql_query(conn, query.c_str())) {
std::cout << "Trigger creation error: " << mysql_error(conn) << std::endl;
return 1;
}
std::cout << "DELETE trigger created successfully." << std::endl;
mysql_close(conn);
return 0;
}
```
上述例程使用了MySQL数据库,并创建了一个名为`delete_trigger`的DELETE触发器。该触发器在每次删除`table_name`表中的数据时,将被删除的数据的ID插入到`log_table`表中。
阅读全文