C#操作SQLite数据库之读写数据库的方法
SQLite简介
SQLite是一款轻型、自包含且无需服务器的SQL数据库引擎,支持大部分的SQL标准,其数据存储在单个磁盘文件中,并使用标准的SQL查询语句进行访问。因此,SQLite具有许多优点,如具有跨平台跨语言访问、开源、简单易用、占用空间小、速度快等等。因此,SQLite是很多开发人员的首选数据库。
C#操作SQLite数据库之读写数据库的方法
1. 安装SQLite NuGet包
在Visual Studio中新建一个C#控制台程序,然后在解决方案管理器中右键单击项目,选择“管理NuGet程序包”,在“浏览”选项卡中搜索“System.Data.SQLite”,然后安装该NuGet包。
2. 创建SQLite数据库
在程序中,使用以下方法创建SQLite数据库。
using System.Data.SQLite;
// 创建新的数据库文件
SQLiteConnection.CreateFile("MyDatabase.db");
3. 连接SQLite数据库
连接SQLite数据库可以使用以下代码。
using System.Data.SQLite;
string connectionString = "Data Source=MyDatabase.db;Version=3;";
SQLiteConnection connection = new SQLiteConnection(connectionString);
try
{
connection.Open();
// 执行操作,比如创建表、添加数据等
}
finally
{
connection.Close();
}
注:连接SQLite数据库需要指定数据库文件名及其路径,本例中数据库文件名为MyDatabase.db
。
4. 创建表
创建表的代码如下,可以使用SQLiteCommand对象执行SQL语句。
using System.Data.SQLite;
string connectionString = "Data Source=MyDatabase.db;Version=3;";
SQLiteConnection connection = new SQLiteConnection(connectionString);
try
{
connection.Open();
SQLiteCommand command = new SQLiteCommand("CREATE TABLE MyTable (id INTEGER PRIMARY KEY, name TEXT, age INT)", connection);
command.ExecuteNonQuery();
}
finally
{
connection.Close();
}
5. 插入数据
插入数据的代码如下,可以使用SQLiteCommand对象执行SQL语句。
using System.Data.SQLite;
string connectionString = "Data Source=MyDatabase.db;Version=3;";
SQLiteConnection connection = new SQLiteConnection(connectionString);
try
{
connection.Open();
SQLiteCommand command = new SQLiteCommand("INSERT INTO MyTable (name, age) VALUES ('张三', 20)", connection);
command.ExecuteNonQuery();
}
finally
{
connection.Close();
}
6. 查询数据
查询数据的代码如下,可以使用SQLiteCommand对象执行SQL语句。
using System;
using System.Data.SQLite;
string connectionString = "Data Source=MyDatabase.db;Version=3;";
SQLiteConnection connection = new SQLiteConnection(connectionString);
try
{
connection.Open();
SQLiteCommand command = new SQLiteCommand("SELECT * FROM MyTable", connection);
SQLiteDataReader reader = command.ExecuteReader();
while (reader.Read())
{
Console.WriteLine("ID: {0},Name: {1},Age: {2}", reader.GetInt32(0), reader.GetString(1), reader.GetInt32(2));
}
}
finally
{
connection.Close();
}
示例说明
示例1:创建SQLite数据库并创建表
using System;
using System.Data.SQLite;
class Program
{
static void Main(string[] args)
{
// 创建新的数据库文件
SQLiteConnection.CreateFile("MyDatabase.db");
string connectionString = "Data Source=MyDatabase.db;Version=3;";
SQLiteConnection connection = new SQLiteConnection(connectionString);
try
{
connection.Open();
// 创建表
SQLiteCommand command = new SQLiteCommand("CREATE TABLE MyTable (id INTEGER PRIMARY KEY, name TEXT, age INT)", connection);
command.ExecuteNonQuery();
Console.WriteLine("创建表成功!");
}
finally
{
connection.Close();
}
Console.ReadKey();
}
}
示例2:连接SQLite数据库并查询数据
using System;
using System.Data.SQLite;
class Program
{
static void Main(string[] args)
{
// 连接SQLite数据库
string connectionString = "Data Source=MyDatabase.db;Version=3;";
SQLiteConnection connection = new SQLiteConnection(connectionString);
try
{
connection.Open();
// 查询数据
SQLiteCommand command = new SQLiteCommand("SELECT * FROM MyTable", connection);
SQLiteDataReader reader = command.ExecuteReader();
while (reader.Read())
{
Console.WriteLine("ID: {0},Name: {1},Age: {2}", reader.GetInt32(0), reader.GetString(1), reader.GetInt32(2));
}
}
finally
{
connection.Close();
}
Console.ReadKey();
}
}
以上示例只是基础用法,SQLite数据库还有更多操作,如更新数据、删除数据等,具体实现可参考SQLite.NET官方文档。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#操作SQLite数据库之读写数据库的方法 - Python技术站