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. ORM for Qt
QtWS25 Last Chance

ORM for Qt

Scheduled Pinned Locked Moved General and Desktop
ormdatabase
37 Posts 10 Posters 42.1k 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.
  • napajejenunedk0N Offline
    napajejenunedk0N Offline
    napajejenunedk0
    wrote on last edited by
    #3

    "LiteSQL":http://sourceforge.net/projects/litesql/
    "QDjango":https://code.google.com/p/qdjango/

    "Wikipedia":http://en.wikipedia.org/wiki/List_of_object-relational_mapping_software provides a good reference as well.

    I was searching for good LGPL or BSD license ORM framework, but haven't tested any of these and made the ORM work myself using the Qt's SQL models: QSqlQueryModel, ...

    The ORMs stated as best are:
    "QxOrm":http://www.qxorm.com/qxorm_en/home.html
    "ODB":http://www.codesynthesis.com/products/odb/

    ... but are paid.

    If you test any of these, please share your impressions.

    1 Reply Last reply
    0
    • M Offline
      M Offline
      mbnoimi
      wrote on last edited by
      #4

      I tested QxOrm it works fine and easy to use so I consider it the perfect ORM framework for Qt the only problem with it is the license.

      LiteSQL seems promising but it has major weak point which is XML database defining beside that it's not dealing with Qt library directly such as QxOrm.

      QDjango is most candidate as a replacement to QxOrm because it built over Qt, supports LGPL and doesn't XML database definition, so this is the one I've to dig into it specially for performance tests... does any one share these tests with me?

      1 Reply Last reply
      0
      • M Offline
        M Offline
        mbnoimi
        wrote on last edited by
        #5

        I forgot to mention... I found [url=https://code.google.com/p/yb-orm/]yb-orm[/url] it has a major weak point which is can't deal with Postgresql, MySQL or Oracle drivers natively (it uses ODBC) which means weak performance by comparing to native drivers.

        1 Reply Last reply
        0
        • V Offline
          V Offline
          victorzhuk
          wrote on last edited by
          #6

          maybe my orm desision will be helpfull ;) https://github.com/victorzhuk/eorm

          1 Reply Last reply
          0
          • M Offline
            M Offline
            mbnoimi
            wrote on last edited by
            #7

            [quote author="victorzhuk" date="1368309226"]maybe my orm desision will be healfull ;) https://github.com/victorzhuk/eorm[/quote]

            • Is there any example or demo using it?
            • Does the performance is quick as Qt's model or it's a slower a little bit (I'm not sure what if I used the loops instead of Qt's model the performance will be same as Qt)?
            1 Reply Last reply
            0
            • V Offline
              V Offline
              victorzhuk
              wrote on last edited by
              #8
              • examples are placed in documentation, use Doxygen to compose html docs. I can help if you don`t know how
              • I think yes, but I don`t have chance to check this - I create this lib for personal use, and if you have any test results and ideas I can impove it :)

              ps: sory for my english :)

              1 Reply Last reply
              0
              • M Offline
                M Offline
                mbnoimi
                wrote on last edited by
                #9

                [quote author="victorzhuk" date="1368310323"]examples are placed in documentation, use Doxygen to compose html docs. I can help if you don`t know how[/quote]

                Oops I don't want to build the project manually... I just ask you for tiny example :)

                [quote]I think yes, but I don`t have chance to check this - I create this lib for personal use, and if you have any test results and ideas I can impove it :)[/quote]

                Do you mean it's slower? or it has same Qt performance?

                1 Reply Last reply
                0
                • V Offline
                  V Offline
                  victorzhuk
                  wrote on last edited by
                  #10

                  if you need litle demo I can quick create it for you ;)

                  bq. Do you mean it’s slower? or it has same Qt performance?

                  library use only qt`s mechanisms, no boost or custom macros...and when I use it performance was the same

                  it`s will be great if my lib help anybody. wait for a sec, I post demo

                  1 Reply Last reply
                  0
                  • V Offline
                    V Offline
                    victorzhuk
                    wrote on last edited by
                    #11

                    http://rapidshare.com/files/549905365/EOrmDemo.tar.gz please

                    1 Reply Last reply
                    0
                    • M Offline
                      M Offline
                      mbnoimi
                      wrote on last edited by
                      #12

                      [quote author="victorzhuk" date="1368314480"]http://rapidshare.com/files/549905365/EOrmDemo.tar.gz please[/quote]

                      It's not working!!! use another sharing website please (try one.ubuntu.com)
                      [quote]
                      The download for this file has not been enabled. Only the user who uploaded it, can enable the download option.
                      [/quote]

                      1 Reply Last reply
                      0
                      • V Offline
                        V Offline
                        victorzhuk
                        wrote on last edited by
                        #13

                        here it is http://ubuntuone.com/5wimYZQnJJlcQCBo5pDpS6

                        1 Reply Last reply
                        0
                        • V Offline
                          V Offline
                          victorzhuk
                          wrote on last edited by
                          #14

                          For demo success working you should compile EOrm and add .so(.dll) and *.h files to EOrmDemo project (just replace paths in *.pro file)

                          1 Reply Last reply
                          0
                          • M Offline
                            M Offline
                            mbnoimi
                            wrote on last edited by
                            #15

                            [quote author="victorzhuk" date="1368314994"]here it is http://ubuntuone.com/5wimYZQnJJlcQCBo5pDpS6[/quote]

                            Thanks, I successfully run the example :) it's quite easy to understand... I think eorm's performance should be as Qt's model.

                            Any way, I've to test it in heavy and excessive usage then compare it with the above libraries in addition to Qt standard model, this may take some time because I'm busy these days.

                            Do you want to share with me these tests?

                            I want to test:

                            • eorm
                            • QDjango
                            • Standard Qt model
                            1 Reply Last reply
                            0
                            • M Offline
                              M Offline
                              mbnoimi
                              wrote on last edited by
                              #16

                              until that date, could you please add some exmpales to your Git repository instead of this quick example?

                              1 Reply Last reply
                              0
                              • V Offline
                                V Offline
                                victorzhuk
                                wrote on last edited by
                                #17

                                sure :) how can I help you? what tests?

                                1 Reply Last reply
                                0
                                • M Offline
                                  M Offline
                                  mbnoimi
                                  wrote on last edited by
                                  #18

                                  [quote author="victorzhuk" date="1368317045"]sure :) how can I help you? what tests?[/quote]

                                  I'm planning to apply some complicated queries with millions of records on stable database server (ex. MySQL or Postgresql)

                                  1 Reply Last reply
                                  0
                                  • V Offline
                                    V Offline
                                    victorzhuk
                                    wrote on last edited by
                                    #19

                                    lets try :) about examples - I find a time and upload some in git, with find,model,create,delete etc.. hope its help somebody

                                    1 Reply Last reply
                                    0
                                    • M Offline
                                      M Offline
                                      mbnoimi
                                      wrote on last edited by
                                      #20

                                      [quote author="victorzhuk" date="1368317891"]lets try :) about examples - I find a time and upload some in git, with find,model,create,delete etc.. hope its help somebody[/quote]

                                      Thanks... this will ease comparing process.

                                      1 Reply Last reply
                                      0
                                      • M Offline
                                        M Offline
                                        mbnoimi
                                        wrote on last edited by
                                        #21

                                        Guys, I found this library which may works too. I'll add it for performance comparison.
                                        https://sourceforge.net/projects/qtpersistence/?source=directory

                                        1 Reply Last reply
                                        0
                                        • M Offline
                                          M Offline
                                          mbnoimi
                                          wrote on last edited by
                                          #22

                                          Until now I'm planning to test:

                                          • eorm: https://github.com/victorzhuk/eorm
                                          • QDjango: https://code.google.com/p/qdjango/
                                          • QsT SQL Tools: https://sourceforge.net/projects/qstsqltools/?source=directory
                                          • QtPersistence: https://sourceforge.net/projects/qtpersistence/?source=directory
                                          • Standard Qt model

                                          I'm still looking for others...

                                          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