/// 1、添加引用 工具 -> Nuget 包管理器 -> 管理解决方案的 Nuget 程序包 -> 在搜索输入 "sqlite" 安装 System.Data.SQLite using System.Data.SQLite; using System.Data; /// 2、创建表 // 数据库路径 string path = @"C:\Users\Administrator\Desktop\tmp\aaa.db"; // 连接数据库: 如果数据库文件不存在会自动创建, 数据库后缀可以任意,例如 aaa.jas aaa.dat SQLiteConnection cn = new SQLiteConnection("data source=" + path); if (cn.State != System.Data.ConnectionState.Open) { cn.Open(); SQLiteCommand cmd = new SQLiteCommand(); cmd.Connection = cn; // 创建表语句 cmd.CommandText = "create table IF NOT EXISTS t1(id integer primary key autoincrement,name text not null);"; cmd.ExecuteNonQuery(); } cn.Close(); // 关闭数据库连接 /// 3、插入数据 string path = @"C:\Users\Administrator\Desktop\tmp\aaa.db"; SQLiteConnection cn = new SQLiteConnection("data source=" + path); if (cn.State != System.Data.ConnectionState.Open) { cn.Open(); SQLiteCommand cmd = new SQLiteCommand(); cmd.Connection = cn; cmd.CommandText = "INSERT INTO t1(name) VALUES(@name);"; cmd.Parameters.Add("name", DbType.String).Value = "jasper"; cmd.ExecuteNonQuery(); } cn.Close(); /// 4、删除数据 string path = @"C:\Users\Administrator\Desktop\tmp\aaa.db"; SQLiteConnection cn = new SQLiteConnection("data source=" + path); if (cn.State != System.Data.ConnectionState.Open) { cn.Open(); SQLiteCommand cmd = new SQLiteCommand(); cmd.Connection = cn; cmd.CommandText = "DELETE FROM t1 where id=@id;"; cmd.Parameters.Add("id", DbType.Int32).Value = 3; cmd.ExecuteNonQuery(); } cn.Close(); /// 5、更新数据 string path = @"C:\Users\Administrator\Desktop\tmp\aaa.db"; SQLiteConnection cn = new SQLiteConnection("data source=" + path); if (cn.State != System.Data.ConnectionState.Open) { cn.Open(); SQLiteCommand cmd = new SQLiteCommand(); cmd.Connection = cn; cmd.CommandText = "UPDATE t1 SET name=@name where id=@id;"; cmd.Parameters.Add("name", DbType.String).Value = "Jasper"; cmd.Parameters.Add("id", DbType.Int32).Value = 1; cmd.ExecuteNonQuery(); } cn.Close(); /// 6、查询数据 string path = @"C:\Users\Administrator\Desktop\tmp\aaa.db"; SQLiteConnection cn = new SQLiteConnection("data source=" + path); if (cn.State != System.Data.ConnectionState.Open) { cn.Open(); SQLiteCommand cmd = new SQLiteCommand(); cmd.Connection = cn; cmd.CommandText = "SELECT * FROM t1 where id=@id;"; cmd.Parameters.Add("id", DbType.Int32).Value = 1; SQLiteDataReader sr = cmd.ExecuteReader(); while (sr.Read()) { Console.WriteLine(sr.GetInt32(0)); // 第一列数据 id Console.WriteLine(sr.GetString(1)); // 第二列数据 name } sr.Close(); } cn.Close(); /// 7、查询数据的行数(多少条记录) string path = @"C:\Users\Administrator\Desktop\tmp\aaa.db"; SQLiteConnection cn = new SQLiteConnection("data source=" + path); if (cn.State != System.Data.ConnectionState.Open) { cn.Open(); SQLiteCommand cmd = new SQLiteCommand(); cmd.Connection = cn; cmd.CommandText = "SELECT count(*) FROM t1;"; SQLiteDataReader sr = cmd.ExecuteReader(); if(sr.Read()) { Console.WriteLine(sr.GetInt32(0).ToString()); } sr.Close(); } cn.Close(); /// 8、事务 string path = @"C:\Users\Administrator\Desktop\tmp\aaa.db"; SQLiteConnection cn = new SQLiteConnection("data source=" + path); if (cn.State != System.Data.ConnectionState.Open) { cn.Open(); // 开始事务 using (SQLiteTransaction tr = cn.BeginTransaction()) { SQLiteCommand cmd = new SQLiteCommand(); cmd.Connection = cn; cmd.CommandText = "INSERT INTO t1(name) VALUES(@name)"; for (int i = 0; i < 100; i++) { cmd.Parameters.Add("name", DbType.String).Value = "jasper" + i; cmd.ExecuteNonQuery(); } // 事务提交 tr.Commit(); } } cn.Close();
C# 操作SQLite数据库之增删改查
猜你喜欢
转载自www.cnblogs.com/ywj1874/p/9082688.html
今日推荐
周排行