我正在尝试使用 Qt 为我的数据库创建一个 SQL 触发器,我需要有关分隔符的帮助。我在执行查询时没有问题,但是当涉及到像分隔符这样的 mysql 命令时,我该如何处理呢?我用过QSqlDatabase::addDatabase("MYSQL")
连接驱动程序,除了 QSqlDatabase
,我没有使用其他对象和 QSqlQuery
.我的目标也是通过 qt 显式创建触发器,而不是通过驱动程序。
有人可以给我举个例子吗?
最佳答案
您应该使用 addDatabase
将数据库添加到使用驱动程序类型 MYSQL
和连接名称 myConnection
的数据库连接列表中。之后,您应该设置连接的数据库名称并打开它。然后你可以为触发器准备一个查询并执行它:
QSqlDatabase db = QSqlDatabase::addDatabase( "MYSQL","myConnection" );
db.setDatabaseName( "MydatabaseName" );
if( !db.open() )
{
QMessageBox::warning(this, tr("Failed to connect!"), tr("Error connecting to database") );
}
QSqlQuery qry(db);
qry.prepare( "CREATE TRIGGER ins_sum BEFORE INSERT ON account "
"FOR EACH ROW SET @sum = @sum + NEW.amount;" );
qry.exec();
关于c++ - 在 Qt 中使用 C++ 创建 mysql 触发器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23484489/