Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. International
  3. Spanish
  4. UPDATE CON DB SQLITE..NO SALE
Forum Updated to NodeBB v4.3 + New Features

UPDATE CON DB SQLITE..NO SALE

Scheduled Pinned Locked Moved Solved Spanish
16 Posts 5 Posters 2.2k 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.
  • jsulmJ jsulm

    @Casino Why do you call exec() two times (actually 3 times!)?

    actualizar.exec();
    if(!actualizar.exec())
    
    if(!actualizar.exec())
    {
        qDebug() << "Can't Execute Query !";
        qDebug() << actualizar.executedQuery(); // What does this print out?
    }
    
    C Offline
    C Offline
    Casino
    wrote on last edited by
    #5

    @jsulm
    los puse por que fui agregando condicionales...pero los acabo de sacar y sigo igual...

    C 1 Reply Last reply
    0
    • C Casino

      @jsulm
      los puse por que fui agregando condicionales...pero los acabo de sacar y sigo igual...

      C Offline
      C Offline
      Casino
      wrote on last edited by
      #6

      @Casino
      en el caso de borrar me pasa lo mismo mira
      void Blind_Dialog::on_borrar_clicked()
      {
      QSqlQuery borrar;

      borrar.prepare("DELETE FROM blinds WHERE sblind = 100 ");
      if(borrar.exec()){
         qDebug()<<"El registro se ha modificado";
      }else{
         qDebug()<<"El registro NO se ha modificado";
         qDebug()<<"ERROR!"<<borrar.lastError();
      }
      

      }

      El mensaje de error ERROR! QSqlError("", "Unable to fetch row", "No query")

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

        Hola

        Cuando es UPDATE, no tendría que ser:

        actualizar.prepare("UPDATE blinds SET sblind = :sblind, bblind = :bblind, ante = :ante, time = :time, break = :break WHERE Id = 5");
        

        Nunca lo había visto como lo has puesto.

        En cuanto a lo del DELETE, no sé, como no le estás pasando parámetros a la query, no uses prepare, ejecútala directamente.

        Si no se soluciona con lo que digo, pon también la estructura de la tabla, a ver si damos con el error.

        Un saludo

        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
        1
        • C Offline
          C Offline
          Casino
          wrote on last edited by
          #8

          Te envio la tabla
          void Blind_Dialog::CrearTablaCiegas()
          {
          QString consulta;
          consulta.append("CREATE TABLE IF NOT EXISTS Ciegas("
          "Id INTEGER NOT NULL PRIMARY KEY,"
          "sblind INTEGER,"
          "bblind INTEGER,"
          "ante INTEGER,"
          "time INTEGER,"
          "break INTEGER"
          ")");
          QSqlQuery crear;
          crear.prepare(consulta);

          if(crear.exec()){
             qDebug()<<"La tabla CIEGAS existe o se ha creado correctamente";
          }else{
             qDebug()<<"La tabla CIEGAS NO existe o NO se ha creado correctamente";
             qDebug()<<"ERROR!"<<crear.lastError();
          }
          

          }

          juankiJ 1 Reply Last reply
          0
          • C Casino

            Te envio la tabla
            void Blind_Dialog::CrearTablaCiegas()
            {
            QString consulta;
            consulta.append("CREATE TABLE IF NOT EXISTS Ciegas("
            "Id INTEGER NOT NULL PRIMARY KEY,"
            "sblind INTEGER,"
            "bblind INTEGER,"
            "ante INTEGER,"
            "time INTEGER,"
            "break INTEGER"
            ")");
            QSqlQuery crear;
            crear.prepare(consulta);

            if(crear.exec()){
               qDebug()<<"La tabla CIEGAS existe o se ha creado correctamente";
            }else{
               qDebug()<<"La tabla CIEGAS NO existe o NO se ha creado correctamente";
               qDebug()<<"ERROR!"<<crear.lastError();
            }
            

            }

            juankiJ Offline
            juankiJ Offline
            juanki
            Moderators
            wrote on last edited by
            #9

            @Casino said in UPDATE CON DB SQLITE..NO SALE:

            Hola, en los ejemplos que pusiste antes, tanto en el DELETE como en el UPDATE, lo estás tratando de hacer sobre una tabla que se llama blinds. La que nos muestras ahora tiene otro nombre: Ciegas.

            consulta.append("CREATE TABLE IF NOT EXISTS Ciegas("
            

            ¿No te habrás equivocado de tabla? ¿Probaste la modificación que te propuse para el UPDATE?

            Un saludo

            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'.

            C 1 Reply Last reply
            0
            • juankiJ juanki

              @Casino said in UPDATE CON DB SQLITE..NO SALE:

              Hola, en los ejemplos que pusiste antes, tanto en el DELETE como en el UPDATE, lo estás tratando de hacer sobre una tabla que se llama blinds. La que nos muestras ahora tiene otro nombre: Ciegas.

              consulta.append("CREATE TABLE IF NOT EXISTS Ciegas("
              

              ¿No te habrás equivocado de tabla? ¿Probaste la modificación que te propuse para el UPDATE?

              Un saludo

              C Offline
              C Offline
              Casino
              wrote on last edited by
              #10

              @juanki
              Perdón, sorry, en el idioma que sea, la db se llama blinds, y la tabla Ciegas, cuando quería actualizar o borrar me remitía a la db, creyendo que ese era el camino. MUCHÍSIMAS GRACIAS.-

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

                Hola

                Me alegro que se solucionara, las operaciones hay que hacerlas sobre las tablas.

                Por favor, si el tema se solucionó, marque como resuelto el tema.

                Un saludo

                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'.

                C 1 Reply Last reply
                0
                • juankiJ juanki

                  Hola

                  Me alegro que se solucionara, las operaciones hay que hacerlas sobre las tablas.

                  Por favor, si el tema se solucionó, marque como resuelto el tema.

                  Un saludo

                  C Offline
                  C Offline
                  Casino
                  wrote on last edited by
                  #12

                  @juanki
                  ahora bien, yo utilizo
                  void Blind_Dialog::on_Ciegas_itemClicked(QTableWidgetItem *item)
                  {
                  f = item->row();
                  ui->numero->setText(QString::number(f));
                  QTableWidgetItem *Sblind = ui->Ciegas->item(f,0);
                  QTableWidgetItem *Bblind = ui->Ciegas->item(f,1);
                  QTableWidgetItem *Ante = ui->Ciegas->item(f,2);
                  QTableWidgetItem *Time = ui->Ciegas->item(f,3);
                  QTableWidgetItem *Break = ui->Ciegas->item(f,4);

                  ui->Sblind->setText(Sblind->text());
                  ui->Bblind->setText(Bblind->text());
                  ui->Ante->setText(Ante->text());
                  ui->Time->setText(Time->text());
                  ui->Break->setText(Break->text());
                  

                  }
                  para ubicar la fila que quiero modificar, uno o todos los valores, por lo que paso el valor f para actualizar la tabla, ahi se producen errores pese a que f es un int, si le paso el valor o sea 1, 10 o lo que sea la tabla se modifica ytodo bien, pero con f no, que puede ser???

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

                    Hola

                    Tienes que crear un hilo o conversación nueva para esta nueva pregunta, ya que nada tiene que ver con el asunto de esta.

                    Cuando crees la nueva conversación, indica por favor los errores que obtienes, eso ayuda mucho a quien quiera ayudarte.

                    Un saludo

                    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
                    • Y Offline
                      Y Offline
                      Yanley
                      wrote on last edited by
                      #14

                      void RegistroEstudiantes::crearTablaUsuarios()
                      {
                      QString consulta;
                      consulta.append("CREATE TABLE IF NOT EXISTS usuarios("
                      "id INTEGER PRIMARY KEY AUTOINCREMENT,"
                      "nombre VARCHAR(100),"
                      "apellidos VARCHAR(100),"
                      "carnet VARCHAR(100),"
                      "direccion VARCHAR(100),"
                      "circunscripcion VARCHAR(100),"
                      "ausencias INTEGER NOT NULL,"
                      "promedio VARCHAR(100),"
                      "grupo VARCHAR(100),"
                      "suspenso VARCHAR(100)"
                      ");");
                      QSqlQuery crear;
                      crear.prepare(consulta);

                        if(crear.exec())
                        {
                             qDebug()<<"La tabla USUARIO existe o Se ha creado correctamente...";
                        }else{
                              qDebug()<<"La tabla USUARIO NO existe o No se ha creado correctamente...";
                              qDebug()<<"ERROR! "<< crear.lastError();
                        }
                      
                      Y 1 Reply Last reply
                      0
                      • Y Yanley

                        void RegistroEstudiantes::crearTablaUsuarios()
                        {
                        QString consulta;
                        consulta.append("CREATE TABLE IF NOT EXISTS usuarios("
                        "id INTEGER PRIMARY KEY AUTOINCREMENT,"
                        "nombre VARCHAR(100),"
                        "apellidos VARCHAR(100),"
                        "carnet VARCHAR(100),"
                        "direccion VARCHAR(100),"
                        "circunscripcion VARCHAR(100),"
                        "ausencias INTEGER NOT NULL,"
                        "promedio VARCHAR(100),"
                        "grupo VARCHAR(100),"
                        "suspenso VARCHAR(100)"
                        ");");
                        QSqlQuery crear;
                        crear.prepare(consulta);

                          if(crear.exec())
                          {
                               qDebug()<<"La tabla USUARIO existe o Se ha creado correctamente...";
                          }else{
                                qDebug()<<"La tabla USUARIO NO existe o No se ha creado correctamente...";
                                qDebug()<<"ERROR! "<< crear.lastError();
                          }
                        
                        Y Offline
                        Y Offline
                        Yanley
                        wrote on last edited by
                        #15

                        @Yanley

                        Tengo esta tabla y tengo la consulta de la tabla como puedo modificar los datos de la tabla que es esta:

                        void MostrarDatos::mostrarDatos()
                        {
                        QString consulta;
                        consulta.append("SELECT * FROM usuarios");
                        QSqlQuery consultar;
                        consultar.prepare(consulta);

                          if(consultar.exec())
                          {
                               qDebug()<<"Se ha consultado correctamente.";
                          }else{
                                qDebug()<<"NO se ha consultado correctamente.";
                                qDebug()<<"ERROR! "<< consultar.lastError();
                          }
                        
                        
                        
                          int fila=0;
                        
                        
                          ui->tableWidgetDatos->setRowCount(0);
                        
                          while(consultar.next()){
                        
                        
                            ui->tableWidgetDatos->insertRow(fila);
                            ui->tableWidgetDatos->setItem(fila,0,new QTableWidgetItem(consultar.value(1).toByteArray().constData()));
                            ui->tableWidgetDatos->setItem(fila,1,new QTableWidgetItem(consultar.value(2).toByteArray().constData()));
                            ui->tableWidgetDatos->setItem(fila,2,new QTableWidgetItem(consultar.value(3).toByteArray().constData()));
                            ui->tableWidgetDatos->setItem(fila,3,new QTableWidgetItem(consultar.value(4).toByteArray().constData()));
                            ui->tableWidgetDatos->setItem(fila,4,new QTableWidgetItem(consultar.value(5).toByteArray().constData()));
                            ui->tableWidgetDatos->setItem(fila,5,new QTableWidgetItem(consultar.value(6).toByteArray().constData()));
                            ui->tableWidgetDatos->setItem(fila,6,new QTableWidgetItem(consultar.value(7).toByteArray().constData()));
                            ui->tableWidgetDatos->setItem(fila,7,new QTableWidgetItem(consultar.value(8).toByteArray().constData()));
                            ui->tableWidgetDatos->setItem(fila,8,new QTableWidgetItem(consultar.value(9).toByteArray().constData()));
                            fila++;
                          }
                        
                        1 Reply Last reply
                        0
                        • juankiJ Offline
                          juankiJ Offline
                          juanki
                          Moderators
                          wrote on last edited by
                          #16

                          Hola

                          Por favor, no preguntes en un hilo de otra consulta, crea un mensaje nuevo cuando tengas una duda.

                          en cuanto a tu consulta, ¿te refieres a modificar los datos en la base de datos?

                          Un saludo

                          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