System.Data.SQLite 操作SQLite数据库
创建一个新的控制台程序,框架选择.NET Framework 4.7.2
System.Data.SQLite这个是依赖EF引用包时会添加多余引用,当然使用EF的话可以用
引用nuget包,推荐 System.Data.SQLite.Core ,这个比较干净,没有依赖EF
之后在 Program using System.Data.SQLite;
class Program
{
static void Main(string[] args)
{
try
{
SQLiteConnection conn = null;
string dbPath = "Data Source =" + Environment.CurrentDirectory + "/test.db";
conn = new SQLiteConnection(dbPath);//创建数据库实例,指定文件位置
conn.Open();//打开数据库,若文件不存在会自动创建
string sql = "CREATE TABLE IF NOT EXISTS student(id integer, name varchar(20), sex varchar(2));";//建表语句
SQLiteCommand cmdCreateTable = new SQLiteCommand(sql, conn);
cmdCreateTable.ExecuteNonQuery();//如果表不存在,创建数据表
SQLiteCommand cmdInsert = new SQLiteCommand(conn);
cmdInsert.CommandText = "INSERT INTO student VALUES(1, '小红', '男')";//插入几条数据
cmdInsert.ExecuteNonQuery();
cmdInsert.CommandText = "INSERT INTO student VALUES(2, '小李', '女')";
cmdInsert.ExecuteNonQuery();
cmdInsert.CommandText = "INSERT INTO student VALUES(3, '小明', '男')";
cmdInsert.ExecuteNonQuery();
conn.Close();
Console.WriteLine("ok");
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
}
}
在生成项目的时候需要确保有这两个文件夹(可以生成完手动复制,也可以放在程序里设置文件复制)
文件夹里面是各自操作系统版本的 SQLite.Interop.dll
运行程序就会生成