SQLite Forum

System.Data.SQLite
Login

System.Data.SQLite

(1) By anonymous on 2020-08-31 16:26:13 [link] [source]

The SQL statement

SELECT SQLITE_VERSION();

returns

SQLite version: 3.32.1

I have 3.33 installed; that suggests that the NuGet package has version 3.32 within it.

How do I upgrade it to 3.33?

(2) By Larry Brasfield (LarryBrasfield) on 2020-08-31 18:48:37 in reply to 1 [link] [source]

Either wait until "(3.33.0)" is mentioned at the download site, just under "List of Released Packages", or build it yourself using the source found there.

(3) By anonymous on 2020-08-31 19:00:25 in reply to 2 [link] [source]

Scanning my Windows 10 64-bit OS drive, I found 7 copies of SQLite3.dll.

I have no idea which are 32- and which are 64-bits.

When I've found out, I'll rename the existing copies _old and replace them by the current corresponding version.

If this is a bad idea, please let me know

(4) By Larry Brasfield (LarryBrasfield) on 2020-08-31 20:00:26 in reply to 3 [link] [source]

I think that's likely to lead to grief.

Unless you have been lax about giving Admin rights to sketchy programs, anything in an application directory or system directory should be of little concern with respect to what DLL your program will load. This is because of how DLL loading rules determine priority of locations where identically named DLLs might be found.

Furthermore, your version issue will depend upon what version of SQLite.Interop.dll gets loaded when you load (or cause to be loaded) System.Data.SQLite.dll, which will not collide with SQLite3.dll, ever.

If you want to see what version of System.Data.SQLite has been installed, take a look at the listing known as "Apps & Features" (run via WinKey-X menu.)

(5) By anonymous on 2020-08-31 20:27:08 in reply to 4 [link] [source]

I think that's likely to lead to grief.

I am very aware of that. Hence the intention to rename the existing DLLs with suffix OLD in case needed to roll back.

I keep away from the OS disk, never add anything to system folders and never modify environment variables (in spite of various suggestions to put mod_spatialite in System32).

The DLLs on my computer are in different applications e.g. Dell Support Assist =, Notepad++ etc.

I've noted the existence of SQLite.Interp.DLL - What is it? Is it meant to for Dot Net? Or, is it an COM object?

(7.1) By Larry Brasfield (LarryBrasfield) on 2020-08-31 21:24:52 edited from 7.0 in reply to 5 [link] [source]

SQLite.Interop.dll is one component of the System.Data.SQLite distribution. It is where the SQLite library code resides, with interfaces known to and used by the .Net CLR code in the other DLL(s), System.Data.SQLite.dll in particular. It is not a COM interface provider, and it is not "for Dot Net" so much as it allows System.Data.SQLite.dll (which is a .Net library) to do its job. You might say that SQLite.Interop.dll is for System.Data.SQLite.dll, but I would not. I would just say that the components that come with the various System.Data.SQLite release packages need to be used together as the "Deployment Guidelines" there direct.

As for grief, that would probably come after you've forgotten why you renamed DLL's used by some applications, when you try to run them. Or, you might realize that the rename(s) should be undone then, minimizing the grief. However, since that rename is pointless, (as I explained), it is all downside with no upside.

(6) By RandomCoder on 2020-08-31 21:01:13 in reply to 3 [link] [source]

What problem are you trying to solve replacing DLLs for programs you have on your hard drive?

As Larry suggests, it's probably going to cause grief, and I don't see any positive impacts.

(8) By AAsk (aa2e72e) on 2020-09-01 08:06:11 in reply to 6 [source]

On second thoughts, I am not going to replace the DLLs buried in other applications such as Dell Update, NotePad++ etc.

If I were to do so, I would have taken at least one image of my disks beforehand to ensure that I could restore to an earlier position.

(9) By anonymous on 2020-09-01 21:07:08 in reply to 2 [link] [source]

Any chance an alpha pre-release versions of the nuget packages can be built and published based on the core-3-33 branch? I looked into building and publishing them myself to our private Nuget server, but I currently lack all the necessary Visual Studio versions needed to build the Nuget packages.