[quote=470198:@James Nicholson-Plank]Cubesql is based on SQLite and allows multiple users.
Its a great tool also[/quote]
i have been using CubeSQL for the last 15 years (RealSQLServer for a while). The reason i am still using this is because my application can support both single and multiple users with the same application.
With just an extra file, i can turn the single user to multiple users.
I’m loving Xojo for it’s multi-platform possibilities. for the same reasons, when it comes to databases, I wanted something multi databases aware. so I made a database class, that handles all the calls to the databases plugins. and I only call methods from that database class from my apps.
So I can use sqlite, postgres, and mysql independantly, change the database type with one pref property. and I’m open to other databases as soon as there is a plugin available. It only takes 1-2 hours to add a new database type.
of course this is a lot more work to do, but it’s very interesting for any future development.
[quote=470202:@Jean-Yves Pochez]I’m loving Xojo for it’s multi-platform possibilities. for the same reasons, when it comes to databases, I wanted something multi databases aware. so I made a database class, that handles all the calls to the databases plugins. and I only call methods from that database class from my apps.
So I can use sqlite, postgres, and mysql independantly, change the database type with one pref property. and I’m open to other databases as soon as there is a plugin available. It only takes 1-2 hours to add a new database type.
of course this is a lot more work to do, but it’s very interesting for any future development.[/quote]
how do you handle the different SQL from all the database type.
i assume you use prepared statement
[quote=470262:@Richard Duke]how do you handle the different SQL from all the database type.
i assume you use prepared statement[/quote]
This really isn’t as big a deal as you think it is. You can make everything generic enough that it works pretty much with any database.
[quote=470262:@Richard Duke]how do you handle the different SQL from all the database type.
i assume you use prepared statement[/quote]
you’re right : I don’t handle the prepared statements in my modules. I do them specifically in the each app.
so is for any sqlselect, they are specific to the database, and the app.
I have a sqlselect method for my database class, that tramsmits the sql query to the base database
and also do all the “dirty” job like counting the found records, or storing the last row id, that is different in each database.
the main benefit is like your’s with cubesql : I can switch from local to remote database very easily
(except from the specific sql queries, but all in all they are only a few calls in an app)
I use SqlServer and SAP MAXDB (the free Community Edition) which are both suited well for medium to big sizes of data / users.
SqlServer is free only in the limited express variant while MAXDB/Community Edition is free as long as you do not run SAP on it or sell it as part of your Software (in house developement is okay though)
MaxDb has some really nice features like its “no reorganization” approach (no index rebuilds etc.) or automatic space administration. You never have to worry about exploding logfiles that are unwilling to shrink again, it can be accessed in native or “Oracle Mode”, it has all the functions, sequences and whatever else you expect from a modern Dbms.
Indeed. After reading original your post, I went to the community download page and noticed SAP HANA Express. I was quite surprised. It is “a bit of an overkill” for my applications, for sure!
I gave a quick glance to mAXDB a few years ago, but at the time, I went with MS SQL Server Express instead (which I abandoned for recent projects, to PostgreSQL and/or SQLite depending on the use case). I am very curious to take a new look at MAXDB. Thank you for the information!
As many have mentioned here all ready, SQLite for single user applications, and PostgreSQL for web applications. Both are free, easy to use and extremely stable.
As an additional note if you’re deploying to a Mac check out https://postgresapp.com/ it’s a free 1 click installer and makes maintaining the db really simple.
We’ve used this package a lot in the past. Although we are transitioning to MongoDB for some things.