我有以下代码。我的表称为'tableu'。我想用一个保存表名的变量替换'tableu'。我怎么能代表这一点。

   query.prepare(
                "INSERT INTO tableu (village, weight, diet, age)"
                "VALUES (:village, :weight, :diet, :age)"
                );

最佳答案

如果要将表名从tableu更改为NewTableName,可以使用以下任何语法来完成:

query.prepare(
              "RENAME tableu TO NewTableName"
             );

要么
query.prepare(
              "ALTER TABLE tableu RENAME TO NewTableName"
             );

更新:

可能是OP正在寻找这个。
QString tableName = QString("tableu");
QString sqlQuery = QString("INSERT INTO %1 (village, weight, diet, age) VALUES (:village, :weight, :diet, :age)").arg(tableName);

关于c++ - 用查询中的变量替换表名,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7036393/

10-09 05:59