SQLite User Forum

Best Development Environment for SQLite3
Login

Best Development Environment for SQLite3

(1.1) By Willem (WJSwan) on 2023-01-04 11:38:08 edited from 1.0 [link] [source]

Please could somebody advise me on the best FREE development tool I can use to write a program to access a SQLite3 database.

I would prefer if it allows drag and drop GUI interface to develop the program.

(2) By Simon Slavin (slavin) on 2023-01-04 13:57:55 in reply to 1.1 [link] [source]

A program that can access (write and read) a SQLite database can be downloaded from the SQLite site.

https://www.sqlite.org/download.html

Look for a 'Precompiled Binaries' section for your platform, whatever that is. Documentation here:

https://sqlite.org/cli.html

That one isn't a GUI program, it relies on your platform's console software. If you want a GUI program you're going to have to tell us what OS you use, but there's probably no point, just do a websearch for

sqlite free software gui [platform]

or something. End-user software isn't really the concern of this list.

(3) By Chris Locke (chrisjlocke1) on 2023-01-04 22:05:54 in reply to 1.1 [link] [source]

Whats your coding experience, and whats your goal? Is the program to run on windows, Linux, Mac? Mobile? Web?

SQLite can work with pretty much any program, but what's your programming experience?

You can download SharpDevelop and code using vb.net or c# pretty easily, but that only generates Windows binaries.

(4) By Aask (AAsk1902) on 2023-01-04 23:15:20 in reply to 3 [link] [source]

You can download SharpDevelop and code using vb.net or c# pretty easily, but that only generates Windows binaries.

Using what? SQLITE3.DLL or System.Data.SQLite.DLL?

  • Using System.Data.SQLite.DLL is easier but it comes with statically bound versions of SQLite and C# worked examples are very sparse.
  • Using SQLite3.DLL is a lot harder not least because sqlite.org does not provide pinvoke signatures for its exposed API. Without knowledge of C, translating the SQLite APIs into pinvoke for C# is not easy.

(6) By Chris Locke (chrisjlocke1) on 2023-01-05 08:08:02 in reply to 4 [source]

Yes, using System.Data.SQLite.DLL.

Unsure why you suggest statically bound SQLite is a bad thing. Also, depending on your usage requirements, using the library is very straightforward. Pass it SQL, pass it parameters, get rows back .. it does what its meant to do in a very small efficient library. I'd marry it if I could.

(8) By Aask (AAsk1902) on 2023-01-05 12:00:02 in reply to 6 [link] [source]

Unsure why you suggest statically bound SQLite is a bad thing.

Because system.data.sqlite.dll tended to lag behind releases of sqlite3.dll, when sqlite3.dll version 3.37 was released, system.data.sqlite.dll was still bound to version 3.29; that has changed of late.

On the positive side, statically bound sqlite3.dll has advantages: in C#, add a reference and you are ready to go.

(5.1) By Keith Medcalf (kmedcalf) on 2023-01-04 23:23:52 edited from 5.0 in reply to 1.1 [link] [source]

Dyalog APL is a pretty cool development environment, as is Sharp APL. Both can interface with SQLite3, which is merely a library.

You should choose your development environment and language based on what language and development environment you are familliar with. SQLite3 is merely a library and can interface with pretty much anything.

So if you know and like Algol, PL/1, SNOBOL, or SmallTalk, then feel free to use them. Then simply interface with the SQLite3 library just as you would interface with any library written in C.

(9) By Aask (AAsk1902) on 2023-01-05 15:10:08 in reply to 5.1 [link] [source]

Dyalog APL is a pretty cool development environment, as is Sharp APL

Interesting!

As far as I know Sharp APL does not run on Windows 10 or 11.

Are you able to share working examples for Dyalog APL? Or provide links to such examples?

(7) By Donal Fellows (dkfellows) on 2023-01-05 11:41:28 in reply to 1.1 [link] [source]

SQLite can be accessed using very many languages and tools (including both command line tools and GUI tools). Some of those are definitely free, according to whatever sane definition you use. However, tooling at the extreme of drag-and-drop-to-code tends to be rather non-free, as it is a lot of work to develop those sorts of things to the point where they can handle what it is relatively easy to do linguistically. (Simple cases may well have more available tooling, but complex cases remain complex — and expensive — for good reason.)

We might have more specific comments if you indicate what language and platform you're working with. Also, some sectors may have zero-cost access to some commercial tools, so that would also be relevant input to any recommendations.

(10) By doug (doug9forester) on 2023-01-05 16:22:05 in reply to 1.1 [link] [source]

I have been using the free version of Qt Creator for several years for C++ applications. It has a very nice interface to Sqlite (and lots of other databases). You can use exactly the same (C++) code to generate executables on virtually any target machine.

(11) By Chris Locke (chrisjlocke1) on 2023-01-05 16:42:41 in reply to 10 [link] [source]

Want a buggy framework where they introduce more bugs than fix on each release? This is how you get a buggy framework where they introduce more bugs than fix on each release.

DB Browser for SQLite is a multi-platform GUI tool for SQLite databases written in Qt, and (especially on Linux and Mac) it has many irking furballs .. icons not showing, maximise buttons missing, etc. Development has been like poking yourself in the eyes with a hungry pigeon.

(12) By jose isaias cabrera (jicman) on 2023-01-05 17:38:44 in reply to 11 [link] [source]

...like poking yourself in the eyes with a hungry pigeon.

That is comedy, right there, folks. Pure unadulterated comedy. Thanks.