Found this at Fourth World:
Among the DBMS engines that work with SuperCard
are:
HyperHIT (DAS Works) < - - May now be ListTable $149
FileFlex (Component Software) < - -
Appears to be no longer available
Butler (Everyware Software) < - - Appears to be no longer available
dtf (dtf Software) < - - Appears to be no longer available
PoINK SQL (PoINK Software) < - - Appears to be no longer available
For many applications, simple flat-file data
management may do. Fourth World offers an Array XCMD, written by SuperCard
Engineer Mark Lucas, which provides true array support and does pretty fast
sorts and searches among other things.
http://www.fourthworld.com/supercard/FAQ_pages/Q0086.html
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Found this at Hairy Highland Cow - Mac Stuff:
Update - 24 Nov 2008
SQLITE
This is an updated version of Tomas Franzén's external that allows control of SQLite databases. It is a universal binary and supports SC 4.6.
http://www.hairyhighlandcow.net/software/SC-Projects.html
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
It appears my choices are Mark's Array XCMD and the SQLITE external. Does anyone have experience with either? Are there other options I should examine? Thanks for any help.
- Charlie
--
You received this message because you are subscribed to the Google Groups "SuperCard Discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to supercard-tal...@googlegroups.com.
To post to this group, send email to superca...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/supercard-talk/40fece38-16b6-4c8e-a536-9f56f0c1baf2%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Jonathan - - Based on your information I downloaded the SQLITE external file from the "Mac Stuff" page just to test it, and really like what a Supercard project can do using SQLite. Thank you.
Scott - - Based on your information on the Shell function, I think I would like to just use SQLite from my script(s), but I’m at a bit of a loss as to how to do that. The only thing the User Guide says is:
"Application development and prototyping - SuperCard lets you create all kinds of applications, . . . You can even communicate with other Macintosh applications using AppleScript, and access OS X’s built in Unix shell based commands and functions."
But it doesn’t say how.
Supercard Help says:
"get shell(statement[,waitForTicks][,raw])
Shell is a function which allows you to evaluate command line expressions via the BSD subsystem.
See the shell.proj sample project for some examples of what you can do with this powerful feature."
But I can’t seem to find the "shell.proj" sample project file in any of the files I received with my recent 4.8 purchase. And I can't find it on the Supercard site.
Could you please let me know where I could find the example project file? Thanks.
ls
on mouseup
put shell("ls") into cd fld 1
end mouseup
get merge("sqlite3 [[gDatabase]] 'SELECT * FROM table1 WHERE RecordID = `[[it]]`;'")
get shell(it)
--
You received this message because you are subscribed to a topic in the Google Groups "SuperCard Discussion" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/supercard-talk/tuRDsM1RSIQ/unsubscribe.
To unsubscribe from this group and all its topics, send an email to supercard-talk+unsubscribe@googlegroups.com.
To post to this group, send email to supercard-talk@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/supercard-talk/4cbc5ded-cffb-4337-8ec9-cf46c3058fc5%40googlegroups.com.
The Shell.Proj is old and not of much use to you here. Simpler if I give you a simple example. Open the Terminal app and type in
lsfollowed by a return. Notice the output.Now create a SuperCard project with a button and a field. In the button script put:
on mouseup
put shell("ls") into cd fld 1
end mouseup
Note the field contents.
It's that simple. But note when passing SQLite arguments you may need to merge variables and or quoted strings within what you pass to Shell(). It can be pretty complicated to concatenate that all together, and this is why the merge function exists. It allows you to merge a complex SuperTalk expression in a single step. The following is an sqlite3 call to return a record in table1 whose ID is contained in 'it', from a database whose path is contained in gDatabase:
get merge("sqlite3 [[gDatabase]] 'SELECT * FROM table1 WHERE RecordID = `[[it]]`;'")
get shell(it)Hope this helps!
--
You received this message because you are subscribed to a topic in the Google Groups "SuperCard Discussion" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/supercard-talk/tuRDsM1RSIQ/unsubscribe.
To unsubscribe from this group and all its topics, send an email to supercard-talk+unsubscribe@googlegroups.com.
To post to this group, send email to supercard-talk@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/supercard-talk/b8603ea2-d617-4885-9ff4-b28e63776d7c%40googlegroups.com.
function SQLite_Query pID, pQuery, pRowDel, pColDel
if pRowDel is empty then put "cr" into pRowDel
if pColDel is empty then put "tab" into pColDel
put SQLite("query",merge("[[pID]];[[pRowDel]];[[pColDel]][[cr]][[pQuery]]")) into tResult
if line 1 of tResult = "<<SQLiteError>>" then
delete line 1 of tResult
writeLog(tResult)
end if
if line 1 of tResult = "false" and line 2 of tResult contains "SQLite failed" then
delete line 1 of tResult
writeLog(tResult)
end if
return tResult
end SQLite_Query
put merge("DELETE FROM Passwords WHERE PasswordID = `[[tPasswordID]]`;") into tQuery
get SQLite_Query(gDBID,tQuery)
--
You received this message because you are subscribed to a topic in the Google Groups "SuperCard Discussion" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/supercard-talk/tuRDsM1RSIQ/unsubscribe.
To unsubscribe from this group and all its topics, send an email to supercard-talk+unsubscribe@googlegroups.com.
To post to this group, send email to supercard-talk@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/supercard-talk/474c4834-5205-4d55-bdf8-f555305450be%40googlegroups.com.
3. Oh, that was a scripted function. The direct call to the external is:put SQLite("getversion","")
--
You received this message because you are subscribed to a topic in the Google Groups "SuperCard Discussion" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/supercard-talk/tuRDsM1RSIQ/unsubscribe.
To unsubscribe from this group and all its topics, send an email to supercard-talk+unsubscribe@googlegroups.com.
To post to this group, send email to supercard-talk@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/supercard-talk/e7a10a20-f2cc-4d7c-a007-d785129ed019%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "SuperCard Discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to supercard-tal...@googlegroups.com.
To post to this group, send email to superca...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/supercard-talk/594ce105-de72-47f9-8909-39b584847745%40googlegroups.com.
SELECT * FROM people WHERE (firstname LIKE "%fr%" OR lastname LIKE "%fr%" OR country LIKE "%fr%") ORDER BY country
SELECT * FROM people WHERE firstname = "Charles" ORDER BY lastname LIMIT 3