Querying a MySQL database from BBCSDL

Discussions related to database technologies, file handling, directories and storage
Hated Moron
Posts: 132
Joined: Thu 07 Apr 2022, 10:10

Querying a MySQL database from BBCSDL

Post by Hated Moron »

I am writing a library to support querying a MySQL database from BBC BASIC for SDL 2.0, which will work on all the supported platforms (except in-browser). MySQL uses a client-server model - typically the database is stored at a remote site, but need not be - and is therefore more practical to support on a cross-platform basis than SQLite, which is a serverless database assumed to be resident on the local machine.

For testing purposes I am using public MySQL databases, but if anybody has an application for this library I would be happy to try it with their particular data sets. If you'd like me to do that please contact me privately with the login details etc. and what query you would like to perform.
If you are unhappy with any aspect of this post, please report it to the forum administrator (click on the exclamation mark icon in the top-right corner) rather than complaining on the open forum or by private email.

Hated Moron
Posts: 132
Joined: Thu 07 Apr 2022, 10:10

Re: Querying a MySQL database from BBCSDL

Post by Hated Moron »

Hated Moron wrote:
Fri 17 Jun 2022, 09:15
if anybody has an application for this library...
Last chance to express an interest. If nobody has any use for a library to access MySQL databases it will get mothballed (hopefully not entirely forgotten, but I can't promise that!).
If you are unhappy with any aspect of this post, please report it to the forum administrator (click on the exclamation mark icon in the top-right corner) rather than complaining on the open forum or by private email.

Ric
Posts: 99
Joined: Tue 17 Apr 2018, 21:03

Re: Querying a MySQL database from BBCSDL

Post by Ric »

Sorry Richard,
Personally I have no need for the library yet. To be fair I don't know what SQL is an acronym for.
Kind regards Ric

Hated Moron
Posts: 132
Joined: Thu 07 Apr 2022, 10:10

Re: Querying a MySQL database from BBCSDL

Post by Hated Moron »

Ric wrote:
Wed 22 Jun 2022, 18:34
I don't know what SQL is an acronym for.
Structured Query Language isn't it? But I don't think the detail of how the database is queried really matters (although it's nice that there is a degree of consistency)

As I recollect, the similar BB4W library ODBCLIB.BBC was/is quite heavily used. So I rather assumed that if accessing a database is commonly required by BB4W users it might be something that BBCSDL users would value too.

And indeed over at the BASIC Programming Facebook Group database access was something noted as an important capability of a modern BASIC (so much so that some dialects have it built-in).
If you are unhappy with any aspect of this post, please report it to the forum administrator (click on the exclamation mark icon in the top-right corner) rather than complaining on the open forum or by private email.

Hated Moron
Posts: 132
Joined: Thu 07 Apr 2022, 10:10

Re: Querying a MySQL database from BBCSDL

Post by Hated Moron »

On 23/06/2022 11:55, R NBW wrote (cross-posted from the Discussion Group):
I think you should produce the library for BBCSDL and continue to try to persuade users to switch from BB4W.
I can't (at least, I know of no way to) create a BBCSDL library with equivalent functionality to ODBCLIB.BBC, because it fundamentally relies on the Windows ODBC32.DLL library. So whereas ODBCLIB.BBC supports querying any ODBC-compliant database (whether it be SQLite, MySQL, Access or any of the others) the proposed mysqllib.bbc for BBCSDL would support only MySQL. That does inevitably limit its appeal, and may be a reason for a lack of interest.
When the switch comes there will be no alternative unless users want to stay in the dark ages
I think the whole idea of "switching" from BB4W to BBCSDL is part of the problem. It implies that if you start using BBCSDL you must stop using BB4W, which is ridiculous, or that somehow they are so different that learning one makes it harder to use the other. This couldn't be further from the truth: in practice they are so similar that most programs will run equally well in BB4W or BBCSDL with no modifications,.

Take for example SDLIDE.bbc, one of the Integrated Development Environments supplied with BBCSDL. This is a 4,700-line program which creates a fully-fledged Graphical User Interface including menus, toolbars, dialogue boxes etc. This program (and the libraries it relies on) runs perfectly well in either BB4W or BBCSDL!

Or take pinball.bbc, the 3D pinball machine simulation, or Ceefax.bbc, the simulation of the BBC's teletext service, or entertainer.bbc, which plays the Scott Joplin piece accompanied by a 3D animated keyboard. These programs, and many more of the example programs supplied with BBCSDL, run equally well in either BB4W or BBCSDL. And they are far from trivial programs.

Personally I think every single user of BBC BASIC for Windows should download and install BBC BASIC for SDL 2.0, and put a desktop shortcut to it alongside the shortcut to BB4W, as I have. Then, whenever they are writing a new program, or experimenting with something, or learning a new feature of the language, or just tinkering, they can try both:

shortcuts.jpg

Indeed I'd go further. I think every user of BB4W who also has a mobile device, such as a smart phone or a tablet, should install BBCSDL on that as well. Then they will have a chance to experience it on different platforms, see how it works with a touch interface, and generally expand their knowledge and understanding of BBC BASIC.
You do not have the required permissions to view the files attached to this post.
If you are unhappy with any aspect of this post, please report it to the forum administrator (click on the exclamation mark icon in the top-right corner) rather than complaining on the open forum or by private email.

Hated Moron
Posts: 132
Joined: Thu 07 Apr 2022, 10:10

Re: Querying a MySQL database from BBCSDL

Post by Hated Moron »

Hated Moron wrote:
Thu 23 Jun 2022, 13:17
Then they will have a chance to experience it on different platforms, see how it works with a touch interface, and generally expand their knowledge and understanding of BBC BASIC.
And of course I should have added: anybody with a suitable browser (and as far as Windows is concerned that means pretty much anybody not still using the ancient Internet Explorer) should make a point of running the web version of BBC BASIC for SDL 2.0 to get some experience of that as well. You can't argue that BBC BASIC for WIndows is 'good enough' when it comes to running programs that way!
If you are unhappy with any aspect of this post, please report it to the forum administrator (click on the exclamation mark icon in the top-right corner) rather than complaining on the open forum or by private email.