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

Viewed 41

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.

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. How should I fix this?

1 Answers

try to replace query->next() byquery->first()

Related