Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. International
  3. Spanish
  4. Llenar tableview con base d datos
Forum Updated to NodeBB v4.3 + New Features

Llenar tableview con base d datos

Scheduled Pinned Locked Moved Spanish
5 Posts 2 Posters 2.4k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • D Offline
    D Offline
    diego79
    wrote on last edited by
    #1

    tengo una base de datos que quiero me aparezcan los registro en un QTablaView. Pero no se como hacerlo

    1 Reply Last reply
    0
    • juankiJ Offline
      juankiJ Offline
      juanki
      Moderators
      wrote on last edited by
      #2

      Hola

      Imagínate que soy yo el que pregunta y tú quieres ayudarme. ¿Crees que podrías darme una respuesta si pongo tan solo lo que has puesto?

      No das nada de información, ten en cuenta que nosotros NO estamos delante de tu ordenador y no tenemos ni idea de lo que has hecho.

      No es solo aprender a programar, hay que:

      • aprender, obviamente, a programar.
      • aprender a encontrar y solucionar los errores (que los hay, siempre).
      • aprender a consultar la documentación.
      • y si hay que pedir ayuda, se hace, pero hay que saber pedirla también.

      Con una pregunta tan escueta como la que has puesto nadie, a no ser que alguien tenga una bola de cristal, nadie podrá ayudarte.

      Aun así te pregunto: ¿La base de datos contiene datos?

      Saludos

      Intenta explicar el problema lo más claro y detallado posible. Adjunta los errores y el código que creas da el error.
      Procura escribir correctamente y sin faltas de ortografía.

      Si la duda se solucionó, por favor, marca el tema como 'solucionado'.

      1 Reply Last reply
      0
      • D Offline
        D Offline
        diego79
        wrote on last edited by
        #3

        bueno aqui esta mi codigo quiero insertar en el tableview lo que tengo en la base de datos pero no me funciona

        @Tabla_Productos::Tabla_Productos(QWidget *parent) :
        QWidget(parent),
        ui(new Ui::Tabla_Productos)
        {
        ui->setupUi(this);

        midb1=QSqlDatabase::addDatabase("QSQLITE");
        midb1.setDatabaseName("productos.sqlite");
        
        if(midb1.open())
        {
          qDebug()<<"Se ha conectado a la base de datos";
          QSqlQuery query("select codigo,detalle from producto");
          while(query.next())
          {
              QSqlTableModel *model = new QSqlTableModel(this, midb1);
              model->setTable("producto");
              model->setEditStrategy(QSqlTableModel::OnManualSubmit);
              model->select();
              model->setHeaderData(0, Qt::Horizontal, tr("codigo"));
              model->setHeaderData(1, Qt::Horizontal, tr("detalle"));
        
              ui->tableView->setModel(model);
              ui->tableView->show();
              qDebug()<<"Los datos fueron recuperados con exito";
        
          }
        }
        else
        {
          qDebug()<<"ERROR, No se ha podido conectar a base de datos"<<midb1.lastError();
        
        }
        

        }@

        1 Reply Last reply
        0
        • D Offline
          D Offline
          diego79
          wrote on last edited by
          #4

          aqui hay un error que no comprendo

          QSqlDatabasePrivate::removeDatabase: connection 'qt_sql_default_connection' is still in use, all queries will cease to work.
          QSqlDatabasePrivate::addDatabase: duplicate connection name 'qt_sql_default_connection', old connection removed.
          Se ha conectado a la base de datos

          1 Reply Last reply
          0
          • juankiJ Offline
            juankiJ Offline
            juanki
            Moderators
            wrote on last edited by
            #5

            Esto está mejor :)

            [quote author="diego79" date="1417082208"]aqui hay un error que no comprendo

            QSqlDatabasePrivate::removeDatabase: connection 'qt_sql_default_connection' is still in use, all queries will cease to work.
            QSqlDatabasePrivate::addDatabase: duplicate connection name 'qt_sql_default_connection', old connection removed.
            Se ha conectado a la base de datos[/quote]

            Quízás sea por que usa la "conexión por defecto", crea la conexión añadiéndole un nombre:

            @ midb1=QSqlDatabase::addDatabase("QSQLITE", "conexion_db");
            @

            Dale el nombre que prefieras :P

            [quote author="diego79" date="1417082083"]
            @ QSqlQuery query("select codigo,detalle from producto");
            while(query.next())
            {
            QSqlTableModel *model = new QSqlTableModel(this, midb1);
            model->setTable("producto");@
            [/quote]

            No necesitas crear un QSqlQuery para el modelo, el modelo ya se encarga de traer los datos. Mueve la creación del puntero al modelo al archivo de cabecera, por si lo necesitas en otra parte del código.

            [quote author="diego79" date="1417082083"]

            @
            ui->tableView->show();@

            [/quote]

            Esto tampoco lo necesitas, ¿El QTableView lo has puesto en el formulario no? No necesitas mostrarlo, ya se muestra el solito :P

            Por cierto, te vuelvo a preguntar ¿La base de datos contiene datos? Si no tiene nada, pues nada te va a mostrar, por muchas vueltas que le des.

            Saludos

            Intenta explicar el problema lo más claro y detallado posible. Adjunta los errores y el código que creas da el error.
            Procura escribir correctamente y sin faltas de ortografía.

            Si la duda se solucionó, por favor, marca el tema como 'solucionado'.

            1 Reply Last reply
            0

            • Login

            • Login or register to search.
            • First post
              Last post
            0
            • Categories
            • Recent
            • Tags
            • Popular
            • Users
            • Groups
            • Search
            • Get Qt Extensions
            • Unsolved