如何在vs2012和2013中,为项目引入sqlite linq2db,以及C#操作sqlite的基本知识。
新建项目后,在程序包管理控制台中输入:
Install-Package linq2db.SQLite
回车。
下图中是之前翻&墙安装过(顺便赞一下GFW:我XXX!),本次安装是从本地缓存安装的。
安装成功之后,看看解决方案中的项目会有如下变化:
瞬间搞定的即视感!有木有?
最后奉上C#操作sqlite的例子,昨天刚刚研究出来的 ,新鲜的哦!
using System; using System.IO; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Data.SQLite; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { using (SQLiteConnection conn = new SQLiteConnection("Data Source=d:\\abc.db")) { conn.Open(); DropTable(conn); CreateTable(conn); InsertData(conn); //GetData(conn); conn.Close(); } } private static void CreateTable(SQLiteConnection conn) { SQLiteCommand cmd = conn.CreateCommand(); cmd.CommandText = @"CREATE TABLE Question( ID integer primary key, QuestionContent text, HtmlContent text)"; cmd.ExecuteNonQuery(); } private static void InsertData(SQLiteConnection conn) { SQLiteCommand cmd = conn.CreateCommand(); StringBuilder sb = new StringBuilder(); for (int i = 0; i < 100; i++) { sb.AppendFormat("INSERT INTO Question (ID,QuestionContent,HtmlContent) VALUES ({0},'试题内容:{1}','试题答案{2}');", i, Guid.NewGuid().ToString(), Guid.NewGuid().ToString()); } cmd.CommandText = sb.ToString(); cmd.ExecuteNonQuery(); } private static void GetData(SQLiteConnection conn) { SQLiteCommand cmd = conn.CreateCommand(); cmd.CommandText = "SELECT * FROM Question"; SQLiteDataReader reader = cmd.ExecuteReader(); while (reader.Read()) { var obj = new { Id = reader.GetInt32(0), QuestionContent = reader.GetString(1), HtmlContent = reader.GetString(2) }; Console.WriteLine(string.Format("Id:{0};QuestionContent={1};HtmlContent={2}", obj.Id, obj.QuestionContent, obj.HtmlContent)); } } private static void DropTable(SQLiteConnection conn) { SQLiteCommand cmd = conn.CreateCommand(); cmd.CommandText = "Drop Table Question"; cmd.ExecuteNonQuery(); } } }
最后感谢萌萌的IT人:http://blog.csdn.net/dyllove98/article/details/9674137 ,我基本照抄这个博客,然后去掉了后面暂时不用的模板部分。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。