Exactly. What if you have zero connectivity of any sort. No cell, no wifi, no network, not even Starlink works in some of the places my SW has to run.
What SQLite provides that I like is the database is a single file and it works on mobile hardware. everything else requires more processor or a real computer or a network. None of which I have available.
Isn’t that what Core Data is for?
In those cases, Postgres (at least) has a local connection mode that lets client applications connect to the server process running on the same machine. (Not to say that obviates the need for something simple like SQLite, only pointing out that lack of a network connection doesn’t preclude the use of a more sophisticated DBMS)
Thanks, but IIRC Postgres doesn’t run on iOS, which would mean having to use a laptop in the field instead of a tablet/ phone.
You mean as in the deep tunnels of the London Underground where there is no coverage at all. And on platforms even the above ground ones Wifi is very patchy.
(I was responding to OogieM about the “zero connectivity” thing. I completely understand that it’s not an option for mobile, though maybe she was referring to a mobile app situation as well)
Yes, my stuff has to run on Mobile, typically cheap Android phones and tablets not even iOS devices
It should be noted Clarus is just about to release a free version of Clarus Pro, which is the update to Filemaker Pro Advanced, which used to cost a whole lot of money. The main difference being this new free version is going to be single-user only. You’ll have to get a subscription to use it in a muti-user environment.
Execute Program’s courses are great. Everything you do is short examples followed by a simple code test. Can start for free and then a monthly fee.
We use Fulcrum at work for offline field work. It’s similar to Knack/Ninox but a bit simpler but better mapping and excellent offline support.
You can export (maybe sync?) everything to an external Postgres database if you want more power.
here is a link about - Freemium version of Filemaker/Claris Pro?
(also note the spelling = claris)
Jumping back into this topic: I just started a fun little project to make an API server that caches some of its results. I almost always use Postgres but since the needs are so simple for this, I decided to try sqlite… and found it to be delightfully easy to use and integrate into my python code!
If it hadn’t been for this discussion, I probably wouldn’t have thought to try it
But a lot more expensive.
On the matter of “best database programme”, has anyone used Firebird? It has a long pedigree, has a broader, more comprehensive implementation of SQL than SQLite and can be either embedded as a library (like SQLite) or run as a server. It just doesn’t seem to be nearly as well known and I was wondering why that might be?
I wonder why you think Firebird should be better known? SQLite is used many places in Mac and Windows app and operating system software, for one thing. Firebird is unknown to me and a quick look didn’t reveal any particular cause for excitement. There is a similarly named Google app development product called Firebase which was what I initially thought you were referring to.
The whole Pascal/Delphi world has become increasingly obscure over the last 20 years. Firebird’s fortunes are tied to it. SQLite’s small file size and ubiquity/simplicity of libraries made it easier to port to mobile and IoT applications (also growth areas where the ex-Borland ecosystem has barely factored.)
Yes, Delphi has rather slipped from view.
I bumped into Firebird a few weeks ago and was taken by how it supported things that SQLite didn’t — triggers on database events (like starting a new connection or transaction) and procedural SQL being the two standouts — and wondered what it was like in practice. On toy databases it’s been very acceptable, but that’s not real life!
Has any one used it it anger?
This is the primary reason why LambTracker and now AnimalTrakker are based on SQLite. Easy consistent and usable in mobile, all flavors of desktop and with multiple languages without any hassles.
Coding the apps is a bit more difficult but not ever having the benefit of a DB system that had triggers and never using views in my apps I don’t find that a problem. I prefer the DB to be simple and the code to be the complex part rather than pushing tons of stuff off into the database implementation. I’ve been burned by DB systems that helped you a lot and did everythign for you. They are difficult/impossible to extract data out of without the arcane knowledge of exactly how they were set up. SQLite DBs are understandable without reference to the code that manipulates them, at least to me.
I keep running into situations where I’m trying to figure out whether to do more in code and just store data in the database, or to do some of the data munging in SQL. …