LIBPATH+=D:\Oracle11\product\11.2.0\dbhome_1\OCI\lib\MSVC//这个地方LIBPATH甚至都没有提示,这是为什么呢?
结果还是编译失败
你看看你的硬盘的对应路径上,是不是有这些目录和文件
1.调用静态函数,创建数据库链接;
QSqlDatabase db = QSqlDatabase::addDatabase("QOCI", "aewes");
2.链接数据库:
db.setHostName(strHost);//主机IP
db.setUserName(strUserName);//用户名
db.setPassword(strPassword);//密码
db.setPort(port);//端口号
db.setDatabaseName(strDbName);//数据库名
if (!db.open()) {
qDebug() << QStringLiteral("++++++++++++++++++++++++++++++++++数据库连接失败!");
}
3.插入数据:
QSqlDatabase db = QSqlDatabase::database("aewes");
QSqlQuery query(db);
//想要插入多条数据,必须多次运行insert into语句
query.prepare("insert into HYMP_TEST values (:id ,:name,:age)");
query.bindValue(":id", 1);
query.bindValue(":name", QStringLiteral("张三"));
query.bindValue(":age", 26);
query.exec();
db.commit();
4.删除数据:
QSqlDatabase db = QSqlDatabase::database("aewes");
QSqlQuery query(db);
query.prepare("delete from HYMP_TEST where id = :id");
query.bindValue(":id", 1);
query.exec();
db.commit();
5.更新数据:
QSqlDatabase db = QSqlDatabase::database("aewes");
QSqlQuery query(db);
query.prepare("update HYMP_TEST set name = :name , age = :age where id = :id");
query.bindValue(":name", QStringLiteral("李四"));
query.bindValue(":age", 89);
query.bindValue(":id", 1);
query.exec();
db.commit();
6.查询数据:
QSqlDatabase db = QSqlDatabase::database("aewes");
QSqlQuery query(db);
query.exec("select * from HYMP_TEST");
QStringList list;
int rows = query.numRowsAffected();
int fieldNum = query.record().count();//字段数量
qDebug() << QStringLiteral("查询到的字段数:") << fieldNum;
while (query.next()) {
list << query.record().value(0).toString();
for (int i = 0; i < fieldNum; i++) {
qDebug() << query.record().value(i).toString();
}
}
QSqlDatabase db = QSqlDatabase::database("aewes");
QSqlQuery query2(db);
query2.prepare("select * from HYMP_TEST a where a.id = :id");
query2.bindValue(":id", 2);
query2.exec();
QSqlRecord rec = query2.record();
int idxName = rec.indexOf("name");
while (query2.next()) {
qDebug() << query2.record().value(idxName).toString();
}
答案:
从参考资料中并未找到需要添加三行代码的相关内容,因此无法给出具体的解决方案。建议检查添加的第三行代码是否正确,并查阅更多相关资料,尝试解决该问题。