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. XML Query

XML Query

Scheduled Pinned Locked Moved Solved General and Desktop
6 Posts 3 Posters 1.5k 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.
  • Taz742T Offline
    Taz742T Offline
    Taz742
    wrote on last edited by
    #1

    Hello all.
    I need to write at xml my query.
    And then I want to read it at QT.

    Where to start? Tell me some examples.

    Do what you want.

    mrjjM 1 Reply Last reply
    0
    • Taz742T Taz742

      Hello all.
      I need to write at xml my query.
      And then I want to read it at QT.

      Where to start? Tell me some examples.

      mrjjM Offline
      mrjjM Offline
      mrjj
      Lifetime Qt Champion
      wrote on last edited by
      #2

      @Taz742

      Hi
      Its not clear what you mean but writing XML can be done with
      http://doc.qt.io/qt-5/qxmlstreamwriter.html

      https://gist.github.com/lamprosg/2133804

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

        http://doc.qt.io/qt-5/qxmlquery.html

        "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

        Taz742T 1 Reply Last reply
        1
        • VRoninV VRonin

          http://doc.qt.io/qt-5/qxmlquery.html

          Taz742T Offline
          Taz742T Offline
          Taz742
          wrote on last edited by
          #4

          The idea to have such a thing, all my query placed at XML, and then switch the program to read it and keep at QMap.

          Do what you want.

          Taz742T 1 Reply Last reply
          0
          • Taz742T Taz742

            The idea to have such a thing, all my query placed at XML, and then switch the program to read it and keep at QMap.

            Taz742T Offline
            Taz742T Offline
            Taz742
            wrote on last edited by Taz742
            #5
            <?xml version="1.0" encoding="UTF-8"?>
            
            <scriptpak>
            	<queryname>GET USERS</queryname>
            	<queryvalue>SELECT * FROM USERS</queryvalue>
            	
            	<queryname>GET VALUTANAME</queryname>
            	<queryvalue>SELECT ValutaName FROM VALUTA</queryvalue>
            	
            	<queryname>INSERT USER</queryname>
            	<queryvalue>some query..</queryvalue>
            	
            	<queryname>UPDATE</queryname>
            	<queryvalue>some query..</queryvalue>
            </scriptpak
            

            QMap<QString,QString> my_map;

            my_map["GET USERS"] = "SELECT * FROM USERS";
            my_map["GET VALUTANAME"] = "SELECT ValutaName FROM VALUTA";

            Do what you want.

            Taz742T 1 Reply Last reply
            0
            • Taz742T Taz742
              <?xml version="1.0" encoding="UTF-8"?>
              
              <scriptpak>
              	<queryname>GET USERS</queryname>
              	<queryvalue>SELECT * FROM USERS</queryvalue>
              	
              	<queryname>GET VALUTANAME</queryname>
              	<queryvalue>SELECT ValutaName FROM VALUTA</queryvalue>
              	
              	<queryname>INSERT USER</queryname>
              	<queryvalue>some query..</queryvalue>
              	
              	<queryname>UPDATE</queryname>
              	<queryvalue>some query..</queryvalue>
              </scriptpak
              

              QMap<QString,QString> my_map;

              my_map["GET USERS"] = "SELECT * FROM USERS";
              my_map["GET VALUTANAME"] = "SELECT ValutaName FROM VALUTA";

              Taz742T Offline
              Taz742T Offline
              Taz742
              wrote on last edited by Taz742
              #6

              solved:

              QMap<QString, QString> my_map;
                 QString key = "", value = "";
              
                 QFile* file = new QFile("C:/Users/tleladze/Desktop/user_/QUERYS/queryxml.xml");
              
                 if(!file->open(QIODevice::ReadOnly | QIODevice::Text)){
                     qDebug() << "Filed To Open Xml";
                     return -1;
                 }
              
                 QXmlStreamReader* xml = new QXmlStreamReader(file);
              
                 while(!xml->atEnd()){
              
                     QXmlStreamReader::TokenType token = xml->readNext();
              
                     if(token == QXmlStreamReader::StartDocument)
                         qDebug() << "aaa";
              
                     if(xml->name() == "scriptpak"){
                         qDebug() << "bbb";
                     }
              
                     if(xml->name() == "queryname"){
                           key = xml->readElementText();
                           qDebug() << key;
                     }
              
                     if(xml->name() == "queryvalue"){
                         value = xml->readElementText();
                         qDebug() << value;
                     }
              
                     my_map[key] = value;
                 }
              
                 for(auto e : my_map.keys())
                 {
                     qDebug() << e << ":" << my_map.value(e) << '\n';
                 }
              

              answer:

              aaa
              bbb
              "GET USERS"
              "SELECT * FROM USERS"
              "GET VALUTANAME"
              "SELECT ValutaName FROM VALUTA"
              "INSERT USER"
              "some query.."
              "UPDATE"
              "some query.."
              bbb
              "" : "" 
              
              "GET USERS" : "SELECT * FROM USERS" 
              
              "GET VALUTANAME" : "SELECT ValutaName FROM VALUTA" 
              
              "INSERT USER" : "some query.." 
              
              "UPDATE" : "some query.." 
              

              Do what you want.

              1 Reply Last reply
              3

              • Login

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