如果您希望使用QSqlQuery的直接查询方式而不采用prepare,可以使用类似以下的代码:
QString columnName = "your_column_name";
int id = 123; // 指定的id值
QSqlDatabase db = QSqlDatabase::database(); // 获取数据库连接
QSqlQuery query(db);
QString queryString = QString("SELECT %1 FROM your_table WHERE id = %2").arg(columnName).arg(id);
if (query.exec(queryString)) {
if (query.next()) {
QVariant value = query.value(0); // 获取查询到的指定列值
// 处理查询结果
} else {
// 没有匹配的行
}
} else {
// 查询出错
}
请注意,使用这种方式进行直接查询可能会存在SQL注入的风险。为了避免此类风险,通常建议使用参数化查询(prepare)来处理用户输入数据。
内容由零声教学AI助手提供,问题来源于学员提问