SQLite 是一个开源的嵌入式数据库引擎,它实现了自给自足、无服务器的、零配置的、事务型的 SQL 数据库引擎。
特性:
- 零配置:不需要任何外部配置文件,这意味着不需要安装或管理。
- 事务型:支持标准的 SQL 和 ACID 事务。
- 可嵌入性:可以作为一个库嵌入到其他应用程序中。
- 独立性:不需要任何外部依赖或服务。
- 跨平台:可以在许多操作系统上运行,包括 Windows、Linux、macOS 和一些嵌入式系统。
- 小巧:大小通常小于 400KB,非常适合移动应用和嵌入式设备。
- 安全性:支持 SQL 注入防护。
在.NET中操作SQLite,你可以使用System.Data.SQLite
库,它是ADO.NET的实现。
首先,你需要安装System.Data.SQLite
NuGet包。在你的.NET项目中,你可以通过NuGet包管理器来安装。
Install-Package System.Data.SQLite
或者使用dotnet
CLI:
dotnet add package System.Data.SQLite
安装完成后,你就可以使用System.Data.SQLite
来操作SQLite数据库了。
创建和使用SQLite数据库的基本步骤如下:
- 引入必要的命名空间。
- 创建SQLite连接。
- 打开连接。
- 创建命令和执行。
- 读取结果。
- 关闭连接。
示例代码:
using System;
using System.Data.SQLite;
namespace SQLiteExample
{
class Program
{
static void Main(string[] args)
{
string connectionString = "Data Source=example.db";
using (var connection = new SQLiteConnection(connectionString))
{
connection.Open();
string sql = "CREATE TABLE IF NOT EXISTS People (Id INTEGER PRIMARY KEY, Name TEXT, Age INTEGER);";
using (var command = new SQLiteCommand(sql, connection))
{
command.ExecuteNonQuery();
}
sql = "INSERT INTO People (Name, Age) VALUES ('Alice', 30);";
using (var command = new SQLiteCommand(sql, connection))
{
command.ExecuteNonQuery();
}
sql = "SELECT * FROM People;";
using (var command = new SQLiteCommand(sql, connection))
using (var reader = command.ExecuteReader())
{
while (reader.Read())
{
Console.WriteLine($"Id: {reader["Id"]}, Name: {reader["Name"]}, Age: {reader["Age"]}");
}
}
}
}
}
}
这段代码创建了一个名为example.db
的SQLite数据库,创建了一个名为People
的表,插入了一条记录,并且查询了这张表。注意,在实际应用中,你可能需要处理异常和其他更复杂的逻辑,但这是SQLite操作的基础。