简体   繁体   English

Qt Sql 查询 - 如何从表列中获取单个值?

[英]Qt Sql query - how to get a single value from table column?

I am trying to get a single value from table column by using WHERE and ID of selected element, but "query->value(0)" always returns 0.我试图通过使用 WHERE 和所选元素的 ID 从表列中获取单个值,但“query->value(0)”始终返回 0。

float dbSqlQueries::selectMoviePrice(QSqlDatabase db, QTableView *tableview){

  float priceValue;
  QString FetchedID = FetchIDSelectedInTable(tableview);
  qDebug() << "MovieID"<<FetchedID;

  QSqlQuery *query = new QSqlQuery(db);
  query->prepare("SELECT rentcostperday FROM public.Movies WHERE movieid =" + FetchedID);
  query->exec();

  query->next();
  priceValue = query->value(0).toFloat();

  qDebug() <<"Selected price:"<< priceValue;
  return priceValue;}
MovieID "1"
Selected price: 0
MovieID "3"
Selected price: 0
MovieID "1"
Selected price: 0
MovieID "10"
Selected price: 0

Postgres query returns the correct value. Postgres 查询返回正确的值。 How should I fix this?我应该如何解决这个问题?

try to replace query->next() by query->first()尝试用query->first()替换query->next() )

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM