What SQLite GUI tools are available for Windows to edit/manage SQLite databases? The goals are: free user-friendly easy to work with SQLite databases for create, delete, filling tables with data.
![]()
.Index.The recent gains in memory and processing capabilities of PC, server, and laptop computers make the demand for manipulating and displaying complex data structures in everyday applications more and more common. This article provides a C#/.Net 101 style introduction to a well known and widely used open source database called (note that the spelling is not SQLLite or SQL Light).The SQLite database engine is available for multiple operating systems (Android, IOS, Linux, Windows), programming languages, and can be used as in memory engine or as a local file based database engine.
// create a new database connection:SQLiteConnection sqliteconn =new SQLiteConnection( ' Data Source= database.sqlite;Version=3;');// open the connection:SQLiteCommand sqliteconn.Open; Dim sqliteconn As SQLiteConnection' create a new database connection:sqliteconn = New SQLiteConnection( ' Data Source=database.sqlite;Version=3;')' open the connection:sqliteconn.OpenThe first line creates a SQLiteConnection object with a as parameter to the constructor. This statement creates a file called database.sqlite in the current directory under Debug/bin or Release/bin.
The minimal required version of SQLite is version 3. // create a new database connection:SQLiteConnection sqliteconn =new SQLiteConnection( ' Data Source=:memory:;Version=3;');// open the connection:SQLiteCommand sqliteconn.Open; Dim sqliteconn As SQLiteConnection' create a new database connection:sqliteconn = New SQLiteConnection( ' Data Source=:memory:;Version=3;')' open the connection:sqliteconn.OpenThe above statement creates a SQLite database in-memory. Each in-memory database instance is unique and ceases to exist when the connection is closed.The statement below creates a new file based database and creates a table within it (The SQLite system does not (by default) recreate a table.
You should receive a corresponding exception, if you execute the statement twice). // Retrieves the name of the back-end data-type of the column string GetDataTypeName( int i);// Returns the.NET type of a given columnType GetFieldType( int i);// Retrieves the name of the column string GetName( int i);// Retrieves the i of a column, given its name int GetOrdinal( string name);// Returns the original name of the specified column. String GetOriginalName( int i); ' Retrieves the name of the back-end data-type of the column Function GetDataTypeName( ByVal i as Integer) as String ' Returns the.NET type of a given column Function GetFieldType( ByVal i as Integer) as Type' Retrieves the name of the column Function GetName( ByVal i as Integer) as String ' Retrieves the i of a column, given its name Function GetOrdinal( ByVal name as String) as Integer ' Returns the original name of the specified column. Function GetOriginalName( ByVal i as Integer) as String.A C#/.Net application usually comes with its own requirements and architectural patterns.
This section discusses SQLite properties and methods that might be worth be wrapped in a first software version.We will briefly review the Models.SQLiteDatabase database wrapper class, which hides some implementation details, such as, the name of the database file. Abairheart 6-Sep-19 9:016-Sep-19 9:01I downloaded the five tutorials for SQLite in C#, and neither the built-in extraction in Windows 10, nor the 7zip utility can read these files as archives. Other zip files downloaded from CodeProject projects DO unzip as expected. However I have encountered this problem before at CodeProject.The links to the downloads are:these zip files require a specific tool? Or any other condition, that I might not be aware of?Thanks,Abair. AchLog 4-Sep-19 3:134-Sep-19 3:13Hello,Thank you for your very interesting article.I implemented SQLite on a recently developed WPF solution with VS 2019 Community, last maj.I see two problems that I took a long time to solve:1 - the implementation of SQLite not in the main application but in one of its assemblies. In this case the connection to the base does not work.
I had to integrate SQLite at the full solution level although it is used by the assembly only.2 - the publication via Click Once also malfunctions because of the small SQLite.interop.dll DLL that is not generated in the application directory. I spent a day understanding the problem and finding a parade: at startup, the application copies this DLL which is generated in an X86 and X64 subdirectory, to the directory of execution of the application. So it works.But I'm missing info on this DLL: who generates it? Are there two different versions? Why is not it in the right directory? Etc.Do you have any useful information about this?Thank you for your reply. I would start with a normal GridView implementing all features I require - next I would add virtualization and re-factor for that.
I've done this in the TreeView series:The TreeView series shows you control virtualization without loosing any major feature like selecting or locating an item. You can also virtualize your viewmodel data if you can find a way of determining whether an item is visible or not. Jaime Premy 22-Dec-Dec-17 17:16I'm used to work with a Bussines Objects and a Data Access Layer to interact with SQL Server. It's just too damned neat. Member 11486275 7-Dec-17 22:497-Dec-17 22:49I am currently using sqlite over network but have issues were the end users first have to select the db file path(save as setting INI) which is standard windows path ie z://network/path/ as I found that a when using raw network path in the connection you need two additional slashes ie ////network/path/ to have a successfully connection.
![]()
Not ideal when then end user is required to select network path with this in mind as most end user can't grasp this requirement. Would you have a comment related to db over network and multiusers would like to hear your opinions on the matter.Good article by the way.Thank you.
![]() Comments are closed.
|
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. Archives
March 2023
Categories |