Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. International
  3. Italian
  4. La QSqlQuery non viene processata

La QSqlQuery non viene processata

Scheduled Pinned Locked Moved Solved Italian
7 Posts 2 Posters 1.2k Views
  • 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.
  • PollyP Offline
    PollyP Offline
    Polly
    wrote on last edited by
    #1

    Ciao ho un problema sulla Query

    Essendo un primo programma sono stato un po' confusonario
    Apro un file di testo e lo associo ad un oggetto Textstream
    Per una serie di necessità separo il file in una string list
    Associo l'oggetto TextStream ad un nuovo file che salverà le modifiche
    Prelevo le stringhe dalla lista e compongo una query,
    Il database in SQL lo ho aperto .
    A questo punto faccio questa sequenza

    QSqlQuery disattivazione(mDatabase);
         disattivazione = mDatabase.exec(fileDiTesto->readAll());
         disattivazione.exec();
    

    Eseguo il tutto e mi esce questo messaggio

    "QODBCResult::exec: No statement handle available" 
    

    E ovviamente la query non funziona .
    Cosa posso fare?

    1 Reply Last reply
    0
    • VRoninV Offline
      VRoninV Offline
      VRonin
      wrote on last edited by
      #2

      Cosa contiene fileDiTesto->readAll()?

      "La mort n'est rien, mais vivre vaincu et sans gloire, c'est mourir tous les jours"
      ~Napoleon Bonaparte

      On a crusade to banish setIndexWidget() from the holy land of Qt

      1 Reply Last reply
      0
      • PollyP Offline
        PollyP Offline
        Polly
        wrote on last edited by
        #3

        È un Qtextstream che contiene tutta la query

        1 Reply Last reply
        0
        • VRoninV Offline
          VRoninV Offline
          VRonin
          wrote on last edited by VRonin
          #4

          ok, mi spiego meglio:

          const QString contenuti = fileDiTesto->readAll();
          qDebug() << "Query: " << contenuti;
          QSqlQuery disattivazione(mDatabase);
          disattivazione.prepare(contenuti);
          if(disattivazione.exec())
          qDebug() << "Successo";
          

          Cosa stampa?

          "La mort n'est rien, mais vivre vaincu et sans gloire, c'est mourir tous les jours"
          ~Napoleon Bonaparte

          On a crusade to banish setIndexWidget() from the holy land of Qt

          1 Reply Last reply
          0
          • PollyP Offline
            PollyP Offline
            Polly
            wrote on last edited by
            #5

            Risolto. Avevi ragione, non stampava nulla. Infatti prima di queste righe avevo messo la visualizzazione del contenuto dell'oggetto Qtextstream in un browser per essere sicuro del testo. Non sapevo che usando la funzione readAll svuotasse l'oggetto QtextStream. Quindi cambio la domanda, mi daresti un'idea su come conservare il contenuto in un oggetto QTextStream?

            VRoninV 1 Reply Last reply
            0
            • PollyP Polly

              Risolto. Avevi ragione, non stampava nulla. Infatti prima di queste righe avevo messo la visualizzazione del contenuto dell'oggetto Qtextstream in un browser per essere sicuro del testo. Non sapevo che usando la funzione readAll svuotasse l'oggetto QtextStream. Quindi cambio la domanda, mi daresti un'idea su come conservare il contenuto in un oggetto QTextStream?

              VRoninV Offline
              VRoninV Offline
              VRonin
              wrote on last edited by
              #6

              @Polly said in La QSqlQuery non viene processata:

              funzione readAll svuotasse l'oggetto QtextStream.

              Non lo svuota, muove il cursore piu' avanti alla fine del file.
              fileDiTesto->device()->seek(0); riporta il cursore all'inizio cosi' puoi rileggerlo

              "La mort n'est rien, mais vivre vaincu et sans gloire, c'est mourir tous les jours"
              ~Napoleon Bonaparte

              On a crusade to banish setIndexWidget() from the holy land of Qt

              1 Reply Last reply
              0
              • PollyP Offline
                PollyP Offline
                Polly
                wrote on last edited by
                #7

                Ahhhhhh. Ecco è un contenitore. Grazie sei stato molto utile

                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