Help choosing Xojo version.

What’s the difference between Xojo Database and desktop? I can not create desktop applications with the Database version? My goal is to design a multiuser DB application for work. It needs to handle a huge amount of records. Is Xojo capable of doing this? Our current software was written in Visual FoxPro.

You need either Desktop or Web to create either a standalone or web-based app. If you want to use a multi-user database like PostreSQL or MySQL, you will need the Database Access license on top of that. If you want to use the native SQLite, then you won’t, but you will need a server like CubeSQL or Studio Stable Server.

Xojo will let you design an interface that works with these databases, and any of them will handle lots of records.

Thank you Kem. So, If I buy the desktop version and I use SQLite, can I build a commercial MULTIUSER application capable of handling hundreds of thousands of records?

You will need a third-party server for SQLite like the ones I mentioned, but yes, that will work. Note that SQLite isn’t considered particularly fast database, so you might prefer to use PostgreSQL or MySQL if performance is an issue.

I would consider SQLite to be fast. With a big cache, it’s more or less an in memory database.
But for multi user you need normally a server with a database.
For that you need Database license for the build in database plugins.
Or you use our MBS SQL plugin with the SQLConnectionMBS class instead.

When you say multiuser what do you mean? How will teh DB be shared?

SQLite is not a database server and was not designed to be a multiuser database though it can be used with some concurrency on a singe machine. It locks the database file using the host file locking mechanisms, which may not be reliable if you access it over a network, so there is some potential for corruption.

For heavy multi-user access you really should be using a db server of some sort , which complicates things a good bit as you have to have the server running ons some machine somewhere and you have to manage that. And in that cases for most such severs you will need a DB license along with a desktop or web one depending on what you are doing,

[quote=73377:@Karen Atkocius]When you say multiuser what do you mean? How will teh DB be shared?

SQLite is not a database server and was not designed to be a multiuser database though it can be used with some concurrency on a singe machine. It locks the database file using the host file locking mechanisms, which may not be reliable if you access it over a network, so there is some potential for corruption. [/quote]

That is not the only way as has been mentioned several times lately, so I’m surprised this “wrong” advice is still being given.

You could put in a ”server layer" like the free StudioStable does (which uses as SQlite as its database) in which case you do not need a database license.

Have a look at http://www.studiostable.com/database

And no, I do not work for StudioStable. As a matter of fact Brad and I do not get along (like in at all) but he is a good programmer and I think his solution would be just what you need.

That is why i said:

Note the MOST. I believe Valentina can also be used without a DB license, but that is not free either.

BTW we don’t know how many simultaneous users he is likely to have, and I don’t know how much of a load Brad’s free solution can handle. As where I work does not have an intranet, I’ve not looked at it.

  • karen

Thank you all for your input. This program will be used by 4 / 5 users at this moment. The original program that I would like to replace was written in Visual Fox Pro. The company that created it went out of business and is not easy to find VFP programmers nowadays. Anyway, I’m just a beginner programmer and have written just a couple of small applications (in JustBasic). I was hoping I could write something in Xojo eventually to replace it, but seems way more complicated than I anticipated. Again, thank you all for your replies.

For that I’m sure you could use StudioStable… If you go that route you only need a desktop license…

But remember you can work all this out in the IDE without ANY license…
Don’t be afraid to try. Writing DB front ends is not hard. But remember you will need a machine to run the sever on

Do you have an SQL experience in setting up and querying databases? If not, beside learning Xojo that might be your biggest learning curve

  • Karen

I have just a little bit of experience with SQL from working in our actual database. Thank you for all this information. I’ll take a look at StudioStable and go from there. I guess I can experiment using my home network.