¿QSqlQueryModel que no hace nada?

Buenas de nuevo:

Tengo un QSqlQueryModel que toma datos de una base de datos mySQL, no me devuelve ningún error pero no consigo cargar los datos en un QCombo ni en una QTableView

El código usado es éste:

   // Rellenar formas de pago
 
    QSqlQueryModel *model = new QSqlQueryModel();
    model->setQuery("Select * from Formpago");
 
    ui->cbocFormaPago->setModel(model);
    ui->tableView_5->setModel(model); 

Lo he copiado (casi) de este vídeo sobre Qt donde se ve compilar y funcionar:
http://www.youtube.com/watch?v=fJIdMdYJqFk

Sin embargo aunque no me arroja ningún error no carga los datos ni en el combo ni en la tabla.

Por supuesto he comprobado que haya datos en la tabla mySQL y hay una conexión abierta a mySQL que sí está mostrando en el mismo form datos de otras tablas.

¿Alguien me puede arrojar un poco de luz acerca de que es lo que no he hecho bien? ¿o que me estoy dejando?

lastError()

Hola

Dices que no da ningún error, ¿Has verificado mostrando el último error del modelo? Algo así:

// necesitas incluir <QSqlError>
if(model->lastError().isValid())
        qDebug() << model->lastError().text();

Saludos

Hola jc. Pues no, no lo

Hola jc.

Pues no, no lo probé.

Al final lo que hice fue crear la conexión directamente en la pantalla, pues la tenía dentro de una clase, y supongo que como uso dos conexiones ya que necesito dos bases de datos distintas se liaba con eso. Fue poner la conexión directamente en la pantalla y funcionó. Lo que no entiendo es que sí me mostraba los datos de la tabla clientes y no los de la tabla de Formas de pago.

En fin, misterios de la ciencia, jeje.

Gracias por tu respuesta.

Anuncios Google