static void sqlitedemo() { string connString = appConfiguration.GetConnectionString("sqlite"); var sqlitecontext = new Chloe.SQLite.SQLiteContext(new SQLiteConnectionFactory(connString)); //创建表 sqlitecontext.SqlQuery <dynamic>("CREATE TABLE IF NOT EXISTS student(id INTEGER PRIMARY KEY AUTOINCREMENT, name varchar(20), sex varchar(2));").ToList(); //示例重复执行 sqlitecontext.SqlQuery <int>("delete from student").ToList(); //使用事务示例 sqlitecontext.Session.BeginTransaction(); for (var i = 0; i < 10; i++) { sqlitecontext.SqlQuery <int>("INSERT INTO student VALUES(null, @name, @sex)" , new DbParam("@name", "test" + i) , new DbParam("sex", i % 2 == 0 ? "男" : "女")).ToList(); } sqlitecontext.Session.CommitTransaction(); //基本查询 var students = sqlitecontext.SqlQuery <dynamic>("select * from student").ToList(); foreach (var std in students) { Console.WriteLine(std.id + "\t" + std.name + "\t" + std.sex); } }
/// <summary> /// 新建数据库链接 /// </summary> /// <param name="path"></param> /// <returns></returns> public static SQLiteContext NewContext(string path) { var conn = $"data source = {path}"; var factory = new SQLiteFactory(conn); var context = new SQLiteContext(factory); return(context); }