Other Products

LocalizeString Localize strings in your applications.

Change your desktop daily!

Download SuperMySQL

MySQL has long alluded SuperCard ® developers. It was something keeping them from developing enterprise level software. Until now!

Martin Solution has developed a bundle external that allows SuperCard 4.5 projects to connect to MySQL servers. It allows you, with the correct password and user name, to perform SQL query's on the database.

This software is covered by the LGNU license and the source code to the bundle external is available for download.

Currently, this bundle external requires the use of BundleBridge by Tomas Franzén, future versions of SuperCard maynot support this external, so keep up to date as we are sure to upgrade this when needed.


The First Bundle External in this suite will be the most used, SuperMySQL.bundle. SuperMySQL is the bundle that will allow you to envoke a query to a MySQL Server. Any Select statement, Insert statement, Delete statement, Update statement, etc... is useable with this bundle. The following description should cover the basics of how to use SuperMySQL.


get BundleBridge("run",<bundlePath>,<Host>,<User>,<UserPass>,<DbName>,<SQLStatement>,<ItemDel>,<LineDel>)


"run" - Required by BundleBridge.

bundlePath - Also required by BundleBridge, it is the path to the SuperMySQL.bundle file.

Host - This is the address of the MySQL server. If your server is running on your machine then you can use localhost.

User - This parameter is the database user name you want to log into the database with.

UserPass - This is, you guessed it, the password for the user name you passed.

DbName - This is the name of the database you want to connect to.

SQLStatement - This is the parameter that does the work, pass this a valid SQL statement and it will execute it on the database you specified earlier.

ItemDel -

LineDel -

Example SQL Select:

SELECT productName,productURL FROM products WHERE releaseMonth = '10' AND releaseYear = '2005'

SELECT * FROM products

SELECT productName FROM products WHERE releaseYear > (SELECT releaseYear FROM products WHERE productName = 'iMapp')

Example SQL Insert:

INSERT INTO iMappUsers VALUES (1, 'andrew')

NOTE: You should use SuperMySQLEncodeString.bundle on values you are inserting into a MySQL database.




The next bundle external in this suite is SuperMySQLEncodeString.bundle. This bundle converts a string you wish to Insert into a MySQL database using the character set of that particular database server. It is made to work hand in hand wit SuperMySQL, but is compiled as a seperate bundle external since it is easier for you to decide when it is needed than me deciding for you.


get BundleBridge("run",<bundlePath>, <Host>, <UserName>, <UserPassword>, <OriginalString>)


"run" - Required by BundleBridge.

bundlePath - Also required by BundleBridge, it is the path to the SuperMySQL.bundle file.

Host - This is the location of the MySQL database, i.e. IP address, or localhost.

UserName - The User name you want to connect to the database with.

UserPassword - The password for the above user.

OriginalString - This is the string you want to encode.

You would do something like this:

put BundleBridge("run",<bundlePath>, <Host>, <UserName>, <UserPassword>, <OriginalString>) into tVal
-- now create the insert statement
put merge("INSERT INTO iMappUsers VALUES (1, '[[tVal]]')") into tStatement

Then use tStatement with SuperMySQL.


Both bundles are open source and follow the LGNU License and are Copyright © 2005 Bruce Martin

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA