打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
winform中读写SQLite数据库例子

App.config

<?xml version='1.0'?><configuration> <appSettings> <!--FailIfMissing=false表示数据库不存在时就会自动创建--> <add key='DbSQLite' value='data source=|DataDirectory|DB.db3;Pooling=true;FailIfMissing=false'/> </appSettings></configuration>

备注:如果开发环境是4.0,而System.Data.Sqlite是比较低的版本,则可能会弹出错误信息“混合模式程序集是针对“v2.0.50727”版的运行时生成的,在没有配置其他信息的情况下,无法在 4.0 运行时中加载该程序集”,解决方法是在上面加上:

<startup useLegacyV2RuntimeActivationPolicy='true'>
<supportedRuntime version='v4.0'/>

</startup>


数据库读写助手SqliteHelper.cs

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Data;using System.Data.Common;using System.Data.SQLite;public class SqliteHelper{ public SqliteHelper() { // //TODO: 在此处添加构造函数逻辑 // } private static SQLiteConnection GetConnection() { string connStr = System.Configuration.ConfigurationManager.AppSettings['DbSQLite'].ToString(); SQLiteConnection conn = new SQLiteConnection(connStr); conn.Open(); return conn; } public static int ExecuteSql(string sql) { using (SQLiteConnection conn = GetConnection()) { var cmd = new SQLiteCommand(sql, conn); return cmd.ExecuteNonQuery(); } } public static int ExecuteScalar(string sql) { using (SQLiteConnection conn = GetConnection()) { var cmd = new SQLiteCommand(sql, conn); object o = cmd.ExecuteScalar(); return int.Parse(o.ToString()); } } public static SQLiteDataReader ExecuteReader(string sql) { SQLiteConnection conn = GetConnection(); var cmd = new SQLiteCommand(sql, conn); SQLiteDataReader myReader = cmd.ExecuteReader(CommandBehavior.CloseConnection); return myReader; } public static DataSet ExecDataSet(string sql) { using (SQLiteConnection conn = GetConnection()) { var cmd = new SQLiteCommand(sql, conn); SQLiteDataAdapter da = new SQLiteDataAdapter(cmd); DataSet ds = new DataSet(); da.Fill(ds); return ds; } }}

窗体中应用Form1.cs

//判断表是否存在,不存在则生成 int result = SqliteHelper.ExecuteScalar('SELECT COUNT(*) FROM sqlite_master where type='table' and name='tb''); if (result == 0) { //创建表 SqliteHelper.ExecuteSql('create table [tb] (id integer PRIMARY KEY autoincrement, [name] varchar(20), [createDate] datetime default (datetime('now', 'localtime')))'); } //插入一行数据 result = SqliteHelper.ExecuteSql('insert into [tb](name) values ('Luck')'); if(result > 0) { string msg = ''; //读取数据 SQLiteDataReader dr = SqliteHelper.ExecuteReader('select * from [tb]'); if (dr.Read()) { msg = dr[0] ',' dr[1] ',' dr[2]; } MessageBox.Show(msg); }

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
C#使用System.Data.SQLite操作SQLite
wince中使用SQLite
利用SQLite ADO.NET在.NET(C#)中使用SQLite数据库
C#?SQLite?数据库?实例
C#类型初始值设定项引发异常
C#——SQLite速成
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服