Is L.C. a database tool?
Moderators: FourthWorld, heatherlaine, Klaus, kevinmiller, robinmiller
Is L.C. a database tool?
Doesn't seem like it. Obviously you can connect to a db like MySQL but LC doesn't seem to have much interest in db's. Looks like it is kind of a generic programming tool. There is almost no documentation on db related stuff. Can someone who has database experience using other platforms please advise?
Thanks
Thanks
-
- VIP Livecode Opensource Backer
- Posts: 9867
- Joined: Sat Apr 08, 2006 7:05 am
- Location: Los Angeles
- Contact:
Re: Is L.C. a database tool?
LiveCode is a general-purpose GUI app development toolkit that deploys to a nearly unprecedented scope of platforms, covering Windows, macOS, Linux, iOS, and Android. The same language is also available for use on servers with LiveCode Server, and there's even a community-supported build for Raspberry Pi.
As a general-purpose language and toolkit, its focus is indeed not restricted to making database front-ends. For an overview of the breadth of how developers use LiveCode, see the Case Studies page here:
https://livecode.com/customers/
Unlike AlphaBase, LiveCode does not build its own database engine, instead staying true to its mission of focusing on GUI support by providing access to world-class database engines like SQLite, MySQL, postgreSQL, and Oracle. Within our community we also have connectors available for ValentinaDB, CouchDB, and other more specialized data stores like LiveCloud.io.
To get started using DBs with LiveCode see the section on Working with Databases in the User Guide included in the install. These LiveCode Lessons may also help:
http://lessons.livecode.com/searches?ut ... mit=Search
http://livecode.byu.edu/database/dbmanagementinrev.php
Given the popularity of the database engines LiveCode supports, rather than attempt to replicate the documentation for each of them you'll find DB-related tutorials in our community tend to focus only on the LiveCode-specific aspects.
If you work with AlphaBase perhaps there are ways LiveCode could be used to provide additional GUI capabilities for your toolkit.
I see AlphaBase is in Los Angeles, and we have our next local LiveCode User Group meeting coming up tomorrow night in Pasadena:
http://forums.livecode.com/viewforum.php?f=50
If you can make it it would be nice to meet you in person and see how LiveCode may be helpful for the work you do.
As a general-purpose language and toolkit, its focus is indeed not restricted to making database front-ends. For an overview of the breadth of how developers use LiveCode, see the Case Studies page here:
https://livecode.com/customers/
Unlike AlphaBase, LiveCode does not build its own database engine, instead staying true to its mission of focusing on GUI support by providing access to world-class database engines like SQLite, MySQL, postgreSQL, and Oracle. Within our community we also have connectors available for ValentinaDB, CouchDB, and other more specialized data stores like LiveCloud.io.
To get started using DBs with LiveCode see the section on Working with Databases in the User Guide included in the install. These LiveCode Lessons may also help:
http://lessons.livecode.com/searches?ut ... mit=Search
http://livecode.byu.edu/database/dbmanagementinrev.php
Given the popularity of the database engines LiveCode supports, rather than attempt to replicate the documentation for each of them you'll find DB-related tutorials in our community tend to focus only on the LiveCode-specific aspects.
If you work with AlphaBase perhaps there are ways LiveCode could be used to provide additional GUI capabilities for your toolkit.
I see AlphaBase is in Los Angeles, and we have our next local LiveCode User Group meeting coming up tomorrow night in Pasadena:
http://forums.livecode.com/viewforum.php?f=50
If you can make it it would be nice to meet you in person and see how LiveCode may be helpful for the work you do.
Richard Gaskin
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn
Re: Is L.C. a database tool?
Thank you for your response. I did see the "lesson" web page. As I said, scant documentation on database integration.
BTW: You are confusing me with a west coast entity. I'm on the east coast and have no relationship to that company or its product.
BTW: You are confusing me with a west coast entity. I'm on the east coast and have no relationship to that company or its product.
-
- VIP Livecode Opensource Backer
- Posts: 9867
- Joined: Sat Apr 08, 2006 7:05 am
- Location: Los Angeles
- Contact:
Re: Is L.C. a database tool?
Most DB engines LC uses are enormously well documented, so usually the only things needed relate to connections and passing SQL in. Is there a specific question we might be able to help you with?AlphaBase wrote:Thank you for your response. I did see the "lesson" web page. As I said, scant documentation on database integration.
I did write "If you work with AlphaBase", but either way, if you're ever in the neighborhood you're welcome to attend our monthly meetings. And if you're interested in attending one closer to home, check out the User Groups section to see if there's one near you:BTW: You are confusing me with a west coast entity. I'm on the east coast and have no relationship to that company or its product.
http://forums.livecode.com/viewforum.php?f=30
Richard Gaskin
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn
Re: Is L.C. a database tool?
Yes, thank you. I'm quite familiar with SQL, that wasn't my question. My question was regarding "integration".Most DB engines LC uses are enormously well documented, so usually the only things needed relate to connections and passing SQL in. Is there a specific question we might be able to help you with?
Thank you for your invitation.if you're ever in the neighborhood you're welcome to attend our monthly meetings
Re: Is L.C. a database tool?
Are you asking for query binding to objects? That functionality is built in, but it has become neglected, ignored, and dare I say unsupported, because most of us don't bother to use it. There are substitutes, e.g. SQLYoga that attempt to fill the void, if you want that functionality.
Re: Is L.C. a database tool?
Yes, data binding to objects is a good way to put it. When you say "most of us don't bother to use it" - is that because you all are not using LC to connect to back end db's? Could you elaborate?Mikey wrote:Are you asking for query binding to objects? That functionality is built in, but it has become neglected, ignored, and dare I say unsupported, because most of us don't bother to use it. There are substitutes, e.g. SQLYoga that attempt to fill the void, if you want that functionality.
Re: Is L.C. a database tool?
No, it's definitely not that we aren't using it. I would say that many of us are using DB's with most projects that we work on. For starters, building a DB right into an LC app (specifically mySQL or SQLite) is just a matter of ticking a checkbox in the Standalone Application Settings. Connecting to an external DB is also simple. ODBC data sources, for instance, are connected with one call. I don't build apps that don't both embed DB's and connect to external DB's. Every app I write connects to at least one, and sometimes three external DB's. I typically embed an SQLite db directly in the app, as well, but I have embedded mySQL into a couple of them.
I used to use an IDE that was built into a DB, but it was nowhere near as powerful as LC is. Those DB-embedded IDE's think about forms differently than LC does, so naturally, the binding is nearly automatic, but when you want to create an object that is NOT tied to a column/field, you have some work to do. After the first time I typed
I was done thinking about the other way.
If you really want that tighter integration, then look at some of the tools that you can get for LC. SQLYoga is just one example.
I used to use an IDE that was built into a DB, but it was nowhere near as powerful as LC is. Those DB-embedded IDE's think about forms differently than LC does, so naturally, the binding is nearly automatic, but when you want to create an object that is NOT tied to a column/field, you have some work to do. After the first time I typed
Code: Select all
get query("SELECT * FROM someTable") # where query is a function I created that does all the work and error handling involved in a query for me
set the dgText of group "someTableDG" to it
If you really want that tighter integration, then look at some of the tools that you can get for LC. SQLYoga is just one example.
Re: Is L.C. a database tool?
Thank you for your explanation. That's very helpful.
Now I'll ask another question. Can you build/publish a complex and comprehensive LC app to the web?
Now I'll ask another question. Can you build/publish a complex and comprehensive LC app to the web?
Re: Is L.C. a database tool?
I will have to leave that question to others. There is HTML5 capability, but I have not tried to use it. I'm building mobile/desktop/server apps.
-
- VIP Livecode Opensource Backer
- Posts: 9867
- Joined: Sat Apr 08, 2006 7:05 am
- Location: Los Angeles
- Contact:
Re: Is L.C. a database tool?
Not quite yet, but an HTML5 export option is in development.AlphaBase wrote:Can you build/publish a complex and comprehensive LC app to the web?
In my own work, though, I've found that a hybrid approach I call "streaming apps" lets me deliver a better user experience in less development time using LiveCode as it is today, using a slender app that needs to be installed only once which then gets everything it needs over HTTP.
In this setup I deliver a native app for the target OS that only contains enough code to download one stack file from a server. That stack file can then download anything else, UI, code, and data, as needed. This gives my clients the real-time updates of web delivery, but without the confines of limiting an app to the inside of a browser window. I can support fully functional offline modes, integrate with the file system, registry, shell, etc., so we can deliver capabilities fully-native apps enjoy, but with the extra advantage of the user always having the most recent version whenever they open the app.
In LiveCode this sort of thing can be as easy as:
Code: Select all
go url "http://domain.com/path/to/livecodestack.livecode"
Code: Select all
put url "http://domain.com/path/to/llivecodestack.livecode.gz" into tStackData
try
put decompress(tStackData) into tStackData
catch tErr
throw "Couldn't decompress stack data"
end try
go stack tStackData
As we've seen with the explosion of native apps on mobile, this applies to the desktop as well: people are not at all put off by downloading and installing an app if it delivers value and keeps itself up to date.
Richard Gaskin
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn
Re: Is L.C. a database tool?
That's a very nice scenario you laid out and something I will keep in mind. However, it doesn't negate the need for web apps - particularly if it is a public site or a subscription based site where user come to you one way or the other,
Re: Is L.C. a database tool?
You can follow the development of html5 deployment and progress made by checking out the exploits and snazzy work of -hh (Hermann, a great fellow in the community). There are some threads started in this forum you can look up.
-
- VIP Livecode Opensource Backer
- Posts: 9867
- Joined: Sat Apr 08, 2006 7:05 am
- Location: Los Angeles
- Contact:
Re: Is L.C. a database tool?
True, there will be a role for both web pages and native apps for the foreseeable future.AlphaBase wrote:That's a very nice scenario you laid out and something I will keep in mind. However, it doesn't negate the need for web apps - particularly if it is a public site or a subscription based site where user come to you one way or the other,
On the desktop we're seeing a growing role for web-borne apps like Evernote, Adobe CS, and others. And on mobile the preference for native apps is so strong most folks don't even think about opening sites like FB or Twitter in their browser.
For making web pages, at the moment you'll be looking for web authoring tools. But for native apps on both desktop and mobile, LC can be a good choice.
Richard Gaskin
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn
Re: Is L.C. a database tool?
I know a lot of programming languages, but livecode remains the simpler and best to use with database.
With just this you can do all: http://livecode.wikia.com/wiki/SQLite
You can do the same with quite all database and livecode.
Moreover ValentinaDB noSQL db perfect integrated in livecode.
With just this you can do all: http://livecode.wikia.com/wiki/SQLite
You can do the same with quite all database and livecode.
Moreover ValentinaDB noSQL db perfect integrated in livecode.
Livecode Wiki: http://livecode.wikia.com
My blog: https://livecode-blogger.blogspot.com
To post code use this: http://tinyurl.com/ogp6d5w
My blog: https://livecode-blogger.blogspot.com
To post code use this: http://tinyurl.com/ogp6d5w