SQLite简单使用记录
SQLite,一种轻量级的数据库
想要使用的话首先下载安装包。
https://www.sqlite.org/download.html
下载sqlite-netFx20-setup-bundle-x86-2005-1.0.102.0.exe后安装
默认.dll文件所在路径为C:\Program Files (x86)\System.Data.SQLite\2005\bin\System.Data.SQLite.dll
打开VS,新建项目,引用System.Data.SQLite.dll 编写基本操作数据库的类。
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SQLite;
using System.Text; namespace Test
{
public class SQLHelper
{
private SQLiteConnection conn = null; private static SQLHelper _Instance = null;
public static SQLHelper Instance
{
get
{
if (_Instance == null)
{
_Instance = new SQLHelper();
}
return _Instance;
}
}
private SQLHelper()
{
string dbPath = "Data Source =" + Environment.CurrentDirectory + "/face.db"; //创建数据库实例,指定文件位置
conn = new SQLiteConnection(dbPath); //打开数据库,若文件不存在会自动创建
conn.Open();
} ~SQLHelper()
{
try
{
conn.Close();
conn.Dispose();
}
catch
{
}
_Instance = null;
} public int ExecuteNonQuery(string sqlstr,params SQLiteParameter[] praam)
{
SQLiteCommand cmdInsert = new SQLiteCommand(sqlstr, conn); foreach (SQLiteParameter p in praam)
{
cmdInsert.Parameters.Add(p);
} return cmdInsert.ExecuteNonQuery();
} public DataSet Query(string sqlstr)
{
DataSet ds = new DataSet();
using (SQLiteCommand cmd = new SQLiteCommand(sqlstr,this.conn))
{
using (SQLiteDataAdapter sda = new SQLiteDataAdapter(cmd))
{
sda.Fill(ds);
}
}
return ds;
} }
}
创建数据库结构可以通过语句在程序中建立也可以使用其它可视化工具进行。
下载了SQLiteStudio感觉使用起来还不错、软件还自带简体中文(选择之后程序界面一半中文一半英文,反而感觉奇怪)
建好一张表后使用程序进行insert和select测试,一切顺利。
List<SQLiteParameter> list = new List<SQLiteParameter>();
list.Add(new SQLiteParameter("@Id", md5));
list.Add(new SQLiteParameter("@Name", "TEST"));
list.Add(new SQLiteParameter("@Code", "AABBCC"));
list.Add(new SQLiteParameter("@Size", ));
list.Add(new SQLiteParameter("@Text", ""));
list.Add(new SQLiteParameter("@AddDate", DateTime.Now));
SQLHelper.Instance.ExecuteNonQuery("insert into info values(@Id,@Name,@Code,@Size,@Text,@AddDate)", list.ToArray()); DataTable Info = SQLHelper.Instance.Query("select * from Info").Tables[];
SQLite简单使用记录的更多相关文章
- iOS开发数据库篇—SQLite简单介绍
iOS开发数据库篇—SQLite简单介绍 一.离线缓存 在项目开发中,通常都需要对数据进行离线缓存的处理,如新闻数据的离线缓存等. 说明:离线缓存一般都是把数据保存到项目的沙盒中.有以下几种方式 (1 ...
- 【转】 iOS开发数据库篇—SQLite简单介绍
开始学SQLite啦, 原文: http://www.cnblogs.com/wendingding/p/3868893.html iOS开发数据库篇—SQLite简单介绍 一.离线缓存 在项目开发中 ...
- SQLite简单介绍
一.离线缓存 在项目开发中,通常都需要对数据进行离线缓存的处理,如新闻数据的离线缓存等. 说明:离线缓存一般都是把数据保存到项目的沙盒中.有以下几种方式 (1)归档:NSCodeing.NSKeyed ...
- 如果简单的记录,就可以为这个世界创造更多的财富,那么还有什么理由不去写博客呢? — 读<<黑客与画家>> 有感
上一次博文发文时间是2016.1.15,7个月已经过去了.最近读了一本<>的书,对我触动挺大的!里面有关于技术趋势的探讨,也有关于人生和财富的思考! 开始更新iOS122的文章的初衷是,聚 ...
- Python简单爬虫记录
为了避免自己忘了Python的爬虫相关知识和流程,下面简单的记录一下爬虫的基本要求和编程问题!! 简单了解了一下,爬虫的方法很多,我简单的使用了已经做好的库requests来获取网页信息和Beauti ...
- redis5.0.3单实例简单安装记录
redis5.0.3单实例简单安装记录 日常需要测试使用,索性记录下来,免得临时又麻烦的找资料. yum -y install make gcc-c++ cmake bison-devel ncurs ...
- Oracle触发器简单入门记录
写在前面: 最近,老项目新增了日报优化的需求,丽姐让我用触发器去实现当数据插入或者更新的时候,实现对日报表数据更新操作.嗯嗯嗯呢,之前学习数据库的时候,有碰到过触发器,但都是一跳而过,也没怎么去真正的 ...
- 27:简单错误记录SimpleErrorLog
题目描述 开发一个简单错误记录功能小模块,能够记录出错的代码所在的文件名称和行号. 处理: 1. 记录最多8条错误记录,循环记录,对相同的错误记录(净文件名称和行号完全匹配)只记录一条,错误计数增加: ...
- Android SQLite 简单使用演示样例
SQLite简单介绍 Google为Andriod的较大的数据处理提供了SQLite,他在数据存储.管理.维护等各方面都相当出色,功能也很的强大. 袖珍型的SQLite能够支持高达2TB大小的数据库, ...
随机推荐
- [源码]underscore-1.8.3
// Underscore.js 1.8.3 // http://underscorejs.org // (c) 2009-2015 Jeremy Ashkenas, DocumentCloud an ...
- 理解nodejs的module模块儿
module 在 Node.js 模块系统中,每个文件都视为独立的模块,node在运行某个模块儿时会生成一个module对象 Module { id: '.', exports: 2, parent: ...
- iOS开源项目周报0413
由OpenDigg 出品的iOS开源项目周报第十六期来啦.我们的iOS开源周报集合了OpenDigg一周来新收录的优质的iOS开源项目,方便iOS开发人员便捷的找到自己需要的项目工具等. glidin ...
- 在ASP.NET MVC使用JavaScriptResult
本例中,我们尝试把javascript程序搬至控制器中去.更好地在控制器编写程序. 首先来看看原来的写法. 在SepController控制器,添加如下操作: public ActionResult ...
- Spring源码分析:非懒加载的单例Bean初始化过程(上)
上文[Spring源码分析]Bean加载流程概览,比较详细地分析了Spring上下文加载的代码入口,并且在AbstractApplicationContext的refresh方法中,点出了finish ...
- rsync --include-from --exclude-from的理解
rsync --include-from --exclude-from的理解: 1.同时添加--include-from --exclude-from时.后者是对前者的结果进行排除 如:“--incl ...
- SpringBoot结合Swagger2自动生成api文档
首先在pom.xml中添加如下依赖,其它web,lombok等依赖自行添加 <dependency> <groupId>io.springfox</groupId> ...
- Charlie's Change(完全背包+路径记忆)
Charlie's Change Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 3176 Accepted: 913 D ...
- php7 AES IOS Android
$key = 'SK7381DNSU#&#@DS'; //key的长度保持16位 加粗 标识 $cipher = "AES-128-ECB"; $iv_len = open ...
- Codeforces852G(字符串hash)
G. Bathroom terminal time limit per test:2 seconds memory limit per test:256 megabytes input:standar ...