Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Selecting data from mysql using qt?

Selecting data from mysql using qt?

Scheduled Pinned Locked Moved General and Desktop
150 Posts 7 Posters 141.5k 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.
  • D Offline
    D Offline
    Dii
    wrote on 12 Oct 2010, 09:31 last edited by
    #50

    lol, don't be write only :)

    /opt/lampp/bin/mysql -D testTwo -h localhost -u root -p

    1 Reply Last reply
    0
    • D Offline
      D Offline
      Dii
      wrote on 12 Oct 2010, 09:32 last edited by
      #51

      BTW if you do this, AND it's working, you end up in mysql command line interface, you can get out with 'exit'

      1 Reply Last reply
      0
      • D Offline
        D Offline
        doforumda
        wrote on 12 Oct 2010, 09:32 last edited by
        #52

        sorry i couldnt notice Dii user

        1 Reply Last reply
        0
        • L Offline
          L Offline
          lyuts
          wrote on 12 Oct 2010, 09:33 last edited by
          #53

          Wow, mysql is full of surprises. Never got those with psql. ¤ Dii ¤, does it have \q command?

          I'm a rebel in the S.D.G.

          1 Reply Last reply
          0
          • D Offline
            D Offline
            doforumda
            wrote on 12 Oct 2010, 09:34 last edited by
            #54

            yes i get into mysql command line

            1 Reply Last reply
            0
            • D Offline
              D Offline
              doforumda
              wrote on 12 Oct 2010, 09:35 last edited by
              #55

              whats the reason that my database is not opening in qt?

              1 Reply Last reply
              0
              • D Offline
                D Offline
                Dii
                wrote on 12 Oct 2010, 09:38 last edited by
                #56

                lyuts: yes \q is working too

                doforumda: ok, so get into the mysql comand line with the command above

                /opt/lampp/bin/mysql -D testTwo -h localhost -u root -p

                and then do this:

                grant all on testTwo.* to 'root'@'localhost' ;

                Then we have a working mysql, and the rights are granted, we can get back to your Qt program.

                1 Reply Last reply
                0
                • L Offline
                  L Offline
                  lyuts
                  wrote on 12 Oct 2010, 09:41 last edited by
                  #57

                  I hope the next post will be like "Hooray, I got it working!!!" :)

                  I'm a rebel in the S.D.G.

                  1 Reply Last reply
                  0
                  • D Offline
                    D Offline
                    doforumda
                    wrote on 12 Oct 2010, 09:42 last edited by
                    #58

                    there is an error in sql syntax
                    @
                    mysql> grant all on testTwo.* to ‘root’@’localhost’;
                    ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '��root’@’localhost’' at line 1
                    @

                    1 Reply Last reply
                    0
                    • D Offline
                      D Offline
                      Dii
                      wrote on 12 Oct 2010, 09:46 last edited by
                      #59

                      Ok, back to your Qt program:

                      @#include <QApplication>
                      #include <QtSql>

                      int main(int argc, char *argv[])
                      {
                      QCoreApplication a(argc, argv);

                      QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
                      db.setDatabaseName("testTwo");
                      db.setUserName("root");
                      db.setPassword("");
                      db.setHostName("localhost");
                      
                      bool ok = db.open();
                      qDebug() << ok;
                      
                      QSqlQuery query;
                      query.exec&#40;"SELECT firstname,lastname FROM testTable"&#41;;
                      while(query.next()) {
                          QString firstName = query.value(0).toString();
                          QString secondName = query.value(1).toString();
                          qDebug() << "First Name: " << firstName << "Last Name:" << secondName;
                          qDebug() << db.lastError();
                      }
                      return 0;
                      

                      }@

                      Notice, we don't set a password here.
                      The end is 'return 0' instead of 'a.exec()', and it won't hang. The exec() starts the main event loop, and you don't use it here...

                      1 Reply Last reply
                      0
                      • L Offline
                        L Offline
                        lyuts
                        wrote on 12 Oct 2010, 09:46 last edited by
                        #60

                        I think you need to check apostrophes in that command.

                        I'm a rebel in the S.D.G.

                        1 Reply Last reply
                        0
                        • D Offline
                          D Offline
                          Dii
                          wrote on 12 Oct 2010, 09:46 last edited by
                          #61

                          ok, you have wrong apostrof type there. I mean this >> '

                          1 Reply Last reply
                          0
                          • D Offline
                            D Offline
                            doforumda
                            wrote on 12 Oct 2010, 09:48 last edited by
                            #62

                            i tried without apostrophes as well but same error

                            1 Reply Last reply
                            0
                            • D Offline
                              D Offline
                              Dii
                              wrote on 12 Oct 2010, 09:49 last edited by
                              #63

                              nope, you had ` before the root and not '
                              that was the error

                              1 Reply Last reply
                              0
                              • D Offline
                                D Offline
                                Dii
                                wrote on 12 Oct 2010, 09:51 last edited by
                                #64

                                ok, wait a second, I checked it in the meantime and it won't work without password, stay tuned, I post the right command

                                1 Reply Last reply
                                0
                                • D Offline
                                  D Offline
                                  doforumda
                                  wrote on 12 Oct 2010, 09:51 last edited by
                                  #65

                                  you mean like this
                                  grant all on testTwo.* to root@localhost ;
                                  if yes it also displaying same error

                                  1 Reply Last reply
                                  0
                                  • D Offline
                                    D Offline
                                    Dii
                                    wrote on 12 Oct 2010, 09:52 last edited by
                                    #66

                                    so, here we go:

                                    grant all on testTwo.* to 'root'@'localhost' identified by 'password';

                                    Make the right apostrophes! :) You have to set the password in your Qt app too.

                                    1 Reply Last reply
                                    0
                                    • D Offline
                                      D Offline
                                      Dii
                                      wrote on 12 Oct 2010, 09:52 last edited by
                                      #67

                                      ok, wait I see

                                      1 Reply Last reply
                                      0
                                      • D Offline
                                        D Offline
                                        Dii
                                        wrote on 12 Oct 2010, 09:53 last edited by
                                        #68

                                        the Devnet's forum motor changes the apostrophes somehow... use the straight apostrophes everywhere
                                        I mean this @'@

                                        1 Reply Last reply
                                        0
                                        • D Offline
                                          D Offline
                                          doforumda
                                          wrote on 12 Oct 2010, 10:01 last edited by
                                          #69

                                          mysql query did its job its now successful but when i use qt code and try to make it run it displays same error

                                          @
                                          Starting /home/zafar/c++/dbExample-build-desktop/dbExample...
                                          false
                                          QSqlQuery::exec: database not open
                                          /home/zafar/c++/dbExample-build-desktop/dbExample exited with code 0
                                          @

                                          1 Reply Last reply
                                          0

                                          59/150

                                          12 Oct 2010, 09:46

                                          • Login

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