ORM for Qt
-
wrote on 5 May 2013, 00:44 last edited by
I found [url=https://code.google.com/p/d-quest/]DQuest[/url] but it seems still in earlies stages!
-
wrote on 5 May 2013, 07:18 last edited by
"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.
-
wrote on 5 May 2013, 13:39 last edited by
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?
-
wrote on 5 May 2013, 13:56 last edited by
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.
-
wrote on 11 May 2013, 21:53 last edited by
maybe my orm desision will be helpfull ;) https://github.com/victorzhuk/eorm
-
wrote on 11 May 2013, 22:01 last edited by
[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)?
-
wrote on 11 May 2013, 22:12 last edited by
- 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 :)
-
wrote on 11 May 2013, 22:19 last edited by
[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?
-
wrote on 11 May 2013, 22:25 last edited by
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
-
wrote on 11 May 2013, 23:21 last edited by
-
wrote on 11 May 2013, 23:23 last edited by
[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] -
wrote on 11 May 2013, 23:29 last edited by
here it is http://ubuntuone.com/5wimYZQnJJlcQCBo5pDpS6
-
wrote on 11 May 2013, 23:36 last edited by
For demo success working you should compile EOrm and add .so(.dll) and *.h files to EOrmDemo project (just replace paths in *.pro file)
-
wrote on 11 May 2013, 23:50 last edited by
[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
-
wrote on 11 May 2013, 23:55 last edited by
until that date, could you please add some exmpales to your Git repository instead of this quick example?
-
wrote on 12 May 2013, 00:04 last edited by
sure :) how can I help you? what tests?
-
wrote on 12 May 2013, 00:12 last edited by
[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)
-
wrote on 12 May 2013, 00:18 last edited by
let
s try :) about examples - I find a time and upload some in git, with find,model,create,delete etc.. hope it
s help somebody -
wrote on 12 May 2013, 00:22 last edited by
[quote author="victorzhuk" date="1368317891"]let
s try :) about examples - I find a time and upload some in git, with find,model,create,delete etc.. hope it
s help somebody[/quote]Thanks... this will ease comparing process.
-
wrote on 27 May 2013, 03:55 last edited by
Guys, I found this library which may works too. I'll add it for performance comparison.
https://sourceforge.net/projects/qtpersistence/?source=directory