山东滕州做网站技术电话,html企业网站源码下载,建立网站 英语怎么说,西安小寨有什么好玩的SQLite 是一个嵌入式的关系数据库系统#xff0c;使用十分广泛。在一些数据量不大的应用程序中#xff0c;如果使用SQLite可以极大的减少部署时的工作量。 要在C#中使用SQLite也很简单#xff0c;只要找一个C#的wrapper就可以了#xff0c;例如#xff0c;我使用的就是来自…SQLite 是一个嵌入式的关系数据库系统使用十分广泛。在一些数据量不大的应用程序中如果使用SQLite可以极大的减少部署时的工作量。 要在C#中使用SQLite也很简单只要找一个C#的wrapper就可以了例如我使用的就是来自 http://sqlite.phxsoftware.com/ 的一个dllSystem.Data.SQLite. 下载下来的文件是SQLite-1.0.65.0-setup.exe。只要安装一下就可以使用了非常方便。该程序符合ADO.NET的规范并且支持Visual Studio的可视化表设计器。 打开Visual Studio 2008新建一个Console Application为此项目添加System.Data.SQLite的引用。添加一个数据库连接此时可以发现新建连接中有了一个SQLite Database Connection选择此类型的数据连接并且新建一个文件 test.db3. 接下来在新数据库中添加一张表如下 下面开始为此表建立一个Data Access类以展示在C#中如何使用SQLite可以想象和操作其他数据库是几乎一样的感谢ADO.NET的功劳。 首先是一个实体类 Book.cs public class Book { private int id; private string bookName; private decimal price; public int ID { get { return id; } set { id value; } } public string BookName { get { return bookName; } set { bookName value; } } public decimal Price { get { return price; } set { price value; } } } 编写DAL类 using System;using System.Collections.Generic;using System.Text;using System.Data.SQLite; namespace ConsoleApplication1{ public class BookDAL { public static bool Create(Book book) { try { using (SQLiteConnection conn new SQLiteConnection(Data Sourcee:\\test.db3)) { conn.Open(); SQLiteCommand cmd conn.CreateCommand(); cmd.CommandText insert into Book values(ID,BookName,Price);; cmd.Parameters.Add(new SQLiteParameter(ID, book.ID)); cmd.Parameters.Add(new SQLiteParameter(BookName, book.BookName)); cmd.Parameters.Add(new SQLiteParameter(Price, book.Price)); int i cmd.ExecuteNonQuery(); return i 1; } } catch (Exception) { //Do any logging operation here if necessary return false; } } public static bool Update(Book book) { try { using (SQLiteConnection conn new SQLiteConnection(Data Sourcee:\\test.db3)) { conn.Open(); SQLiteCommand cmd conn.CreateCommand(); cmd.CommandText update Book set BookNameBookName,PricePrice where IDID;; cmd.Parameters.Add(new SQLiteParameter(ID, book.ID)); cmd.Parameters.Add(new SQLiteParameter(BookName, book.BookName)); cmd.Parameters.Add(new SQLiteParameter(Price, book.Price)); int i cmd.ExecuteNonQuery(); return i 1; } } catch (Exception) { //Do any logging operation here if necessary return false; } } public static bool Delete(int ID) { try { using (SQLiteConnection conn new SQLiteConnection(Data Sourcee:\\test.db3)) { conn.Open(); SQLiteCommand cmd conn.CreateCommand(); cmd.CommandText delete from Book where IDID;; cmd.Parameters.Add(new SQLiteParameter(ID, ID)); int i cmd.ExecuteNonQuery(); return i 1; } } catch (Exception) { //Do any logging operation here if necessary return false; } } public static Book GetbyID(int ID) { try { using (SQLiteConnection conn new SQLiteConnection(Data Sourcee:\\test.db3)) { conn.Open(); SQLiteCommand cmd conn.CreateCommand(); cmd.CommandText select * from Book where IDID;; cmd.Parameters.Add(new SQLiteParameter(ID, ID)); SQLiteDataReader dr cmd.ExecuteReader(); if (dr.Read()) { Book book new Book(); book.ID dr.GetInt32(0); book.BookName dr.GetString(1); book.Price dr.GetDecimal(2); return book; } else return null; } } catch (Exception) { //Do any logging operation here if necessary return null; } } }} 编写测试主程序 using System; namespace ConsoleApplication1{ class Program { static void Main(string[] args) { Book book new Book(); book.ID 1; book.BookName Book A; book.Price 10.0m; BookDAL.Create(book); book.ID 2; book.BookName 第二本书; book.Price 13.0m; BookDAL.Create(book); book BookDAL.GetbyID(2); Console.WriteLine(book.ID book.BookName book.Price); book.Price 11.1m; BookDAL.Update(book); book BookDAL.GetbyID(2); Console.WriteLine(book.ID book.BookName book.Price); book BookDAL.GetbyID(1); Console.WriteLine(book.ID book.BookName book.Price); } }} 最终结果 2 第二本书 132 第二本书 11.11 Book A 10转载于:https://www.cnblogs.com/zhangtao/archive/2010/05/14/1735088.html