How do you programmatically create an empty database?

Mark Schonewille m.schonewille at
Tue Nov 23 18:00:13 EST 2010

Hi Jonathan,

I would use an open-source database like SQLite or MySQL in combination with a good database editor. Actually, that's what I use most of the time, particularly the completely free (open-source) MySQL server. MySQL is a really good database that fits the needs of very large companies. As an editor, my favourite is My PHP Admin, but that's quite a personal choice.

There are also good editors for SQLite and if you're on a Mac, then I think that SQLite is a great way to start because it is simple to use and you don't need to install anything (it is built into Mac OS X, enter sqlite3 in the terminal and type .quit to exit sqlite3) and it is already included with Rev, meaning that it can be ported to different platforms without any effort. I just noticed that Andre recommended the SQLite Manager for FireFox which is also a great way to start.

Valentina works well and has great support, but the software is somehwat heavy to my taste and very expensive compared to the open-source solutions (obviously) and I agree that it is quite impossible to find out whether Valentina is the right tool in 10 minutes :-) I think you need an additional license if you want to use Valentina on a different platform.

Get familiar with databases before you start working with them in Rev. A good database editor allows you to play with SQL syntax. That will get you familiar with it and enables you to check the syntax when it doesn't work from a Rev script. Once you know how databases work, you will also understand how to use it from within RR/LC and why you normally don't just start with creating a bunch of empty files. 

To answer your next question, MySQL has everything you need for an installation with multiple users, since it is a server by itself. SQLite is not a server. Valentina has a paid server and several slightly more complicated paid solutions. You can make SQlite work as a server by adding a RunRev standalone or PHP scripts on the same machine as SQLite, which will talk to SQLite.

You don't want to use a shared drive. You will want to use a server. A shared drive contains files that can be accessed by only one user (with read and write permissions) at any time, while a server can be accessed simultaneouly by multiple users.

MySQL is not installed on the users' machines but on a separate machine (could be yours) that functions as a server.

It would be interesting to hear from Revolution/LiveCode users whether Valentina really provides much better performance and is really worth paying for. 

Best regards,

Mark Schonewille

Economy-x-Talk Consulting and Software Engineering
KvK: 50277553

How to receive a free Color Converter license (read the conditions)

On 23 nov 2010, at 22:46, Jonathan Lynch wrote:

> Honestly, I am still just trying to get my head around using databases.
> I use Rev for processing text in all sorts of creative ways at work - vastly
> increases our productivity - but, I know next to nothing about database use.
> The logical process, to me, would be the following:
> - Create database file
> - Populate it with columns
> - Set up my application to use an embedded database app to write and
> retrieve data as needed
> Say, for example, if I wanted to experiment with Valentina (knowing that the
> demo version only lasts 10 minutes before the app has to be restarted). I
> could not fool around with it, without having an existing file to work with.
> So, I thought to myself, my first step must be to create a database file. I
> am not committed to doing it in a script, I just don't know how else to
> access the embedded database driver functionalities.
> Should I just find a blank database file somewhere on the web and download
> it?

More information about the Use-livecode mailing list