public class SQLiteHelper
{ public const string sConn = "Data Source=" + @"path"; /// <summary>
/// 查询,返回object ,得到查询结果的首行首列的值,若没有首行首列返回NUll
/// </summary>
/// <param name="sql">查询语句</param>
/// <param name="parameters">可选参数</param>
/// <returns></returns>
public static object ExecuteScalar(string sql, params SQLiteParameter[] parameters)
{
return ExecuteScalar(sql, CommandType.Text, parameters); } /// <summary>
/// 查询,返回object ,执行SQl语句,得到查询结果的首行首列,若没有首行首列返回null
/// </summary>
/// <param name="sql">查询语句</param>
/// <param name="type">如何解释命令字符串</param>
/// <param name="parameters">可选的参数</param>
/// <returns></returns>
public static object ExecuteScalar(string sql, CommandType type, params SQLiteParameter[] parameters)
{
using (SQLiteConnection conn = new SQLiteConnection(sConn))
{
conn.Open();
SQLiteCommand cmd = new SQLiteCommand(sql, conn); cmd.CommandType = type;
cmd.Parameters.AddRange(parameters);
object obj = cmd.ExecuteScalar();
cmd.Parameters.Clear();
return obj;
}
} /// <summary>
/// 执行增、删、改
/// </summary>
/// <param name="sql">sql语句</param>
/// <param name="parameters">可选参数</param>
/// <returns>返回int 得到受影响的行数</returns>
public static int ExecuteNonQuery(string sql, params SQLiteParameter[] parameters)
{
return ExecuteNonQuery(sql, CommandType.Text, parameters);
}
/// <summary>
/// 执行增、删、改
/// </summary>
/// <param name="sql">sql语句</param>
/// <param name="type">如何解释命令字符串</param>
/// <param name="parameters">可选参数</param>
/// <returns></returns>
public static int ExecuteNonQuery(string sql, CommandType type, params SQLiteParameter[] parameters)
{
using (SQLiteConnection conn = new SQLiteConnection(sConn))
{
conn.Open();
SQLiteCommand cmd = new SQLiteCommand(sql, conn);
cmd.CommandType = type;
cmd.Parameters.AddRange(parameters);
int num = cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
return num;
}
} /// <summary>
/// 断开式查询,查询多个列
/// </summary>
/// <param name="sql">sql语句</param>
/// <param name="parameters">可选参数</param>
/// <returns>返回DataTable类型</returns>
public static DataTable ExecuteTable(string sql, params SQLiteParameter[] parameters)
{
return ExecuteTable(sql, CommandType.Text, parameters);
} /// <summary>
/// 断开式查询,查询结果可为多个列
/// </summary>
/// <param name="sql">sql语句</param>
/// <param name="type">如何解释命令字符串</param>
/// <param name="parameters">可选参数</param>
/// <returns></returns>
public static DataTable ExecuteTable(string sql, CommandType type, params SQLiteParameter[] parameters)
{
SQLiteConnection conn = new SQLiteConnection(sConn);
conn.Open();
SQLiteCommand cmd = new SQLiteCommand(sql, conn);
cmd.CommandType = type;
cmd.Parameters.AddRange(parameters);
SQLiteDataAdapter sda = new SQLiteDataAdapter(cmd);
DataSet ds = new DataSet();
sda.Fill(ds);
conn.Close();
DataTable dt = ds.Tables[0];
return dt;
}
}

  

SQLite帮助类SQlitehelper 实现对SQLite数据的增删改查的更多相关文章

  1. 用C#实现对MSSqlServer数据库的增删改查---DAL层

    说明:本人完成的工作是对传感器--超声波物位计进行硬件集成,上位机通过串口接收传感器数据并将其存到数据库中:在DAL层实现对数据库的增删改查,其中包含两个数据表分别是WaterLevelSet表和Wa ...

  2. 用C#实现对MSSqlServer数据库的增删改查---Server层(WaterLevelRecordServer.cs、DeviceRecordServer.cs)

    抛开现实的残酷与无奈,对技术孜孜不倦的追求,从专注到执着,从疯狂到忘我,始终坚信代码可以改变世界,更能改变自己的人生. WaterLevelRecordServer.cs using System; ...

  3. 用C#实现对MSSqlServer数据库的增删改查---Server层(WaterLevelSetServer.cs、DeviceSetServer.cs)

    在Server层定义WaterLevelSetServer和WaterLevelRecordServer两个子类,分别继承DeviceSetServer和DeviceRecordServer. usi ...

  4. Mybatis框架基于注解的方式,实对数据现增删改查

    编写Mybatis代码,与spring不一样,不需要导入插件,只需导入架包即可: 在lib下 导入mybatis架包:mybatis-3.1.1.jarmysql驱动架包:mysql-connecto ...

  5. Django框架之第二篇--app注册、静态文件配置、form表单提交、pycharm连接数据库、django使用mysql数据库、表字段的增删改查、表数据的增删改查

    本节知识点大致为:静态文件配置.form表单提交数据后端如何获取.request方法.pycharm连接数据库,django使用mysql数据库.表字段的增删改查.表数据的增删改查 一.创建app,创 ...

  6. dbutils中实现数据的增删改查的方法,反射常用的方法,绝对路径的写法(杂记)

    jsp的三个指令为:page,include,taglib... 建立一个jsp文件,建立起绝对路径,使用时,其他jsp文件导入即可 导入方法:<%@ include file="/c ...

  7. MVC模式:实现数据库中数据的增删改查功能

    *.数据库连接池c3p0,连接mysql数据库: *.Jquery使用,删除时跳出框,确定是否要删除: *.使用EL和JSTL,简化在jsp页面中插入的java语言 1.连接数据库 (1)导入连接数据 ...

  8. Hibernate3回顾-5-简单介绍Hibernate session对数据的增删改查

    5. Hibernate对数据的增删改查 5.1Hibernate加载数据 两种:get().load() 一. Session.get(Class arg0, Serializable arg1)方 ...

  9. Mybatis学习总结(二)—使用接口实现数据的增删改查

    在这一篇中,让我们使用接口来实现一个用户数据的增删改查. 完成后的项目结构如下图所示: 在这里,person代表了一个用户的实体类.在该类中,描述了相关的信息,包括id.name.age.id_num ...

随机推荐

  1. 如何理解typedef void (*pfun)(void)

    问题: 在刚接触typedef void (*pfun)(void) 这个结构的时候,存在疑惑,为什么typedef后只有一"块"东西,而不是两"块"东西呢?那 ...

  2. 解决Xcode真机测试时ineligible devices的问题

    升级了Xcode到6.3,连接真机测试时,出现不能选择设备.如图: 设备系统版本是8.3的,Xcode连接其他低系统版本的设备做真机测试时就不会有这个问题. 有人说这是Xcode6.3的bug. 我的 ...

  3. 爬虫研究-主要针对ali

    公司一个同事想爬取ali的网页受挫,自己跟着尝试了下,发现存在anti-spdier.准备了解下反爬虫,看怎么处理ali. http://www.freebuf.com/news/topnews/96 ...

  4. Hive 笔记

    DESCRIBE EXTENDED mydb.employees  DESCRIBE EXTENDED mydb.employees DESCRIBE EXTENDED mydb.employees ...

  5. 在Andoid开发中使用MVP模式来解耦,增加可测试性

    by Jeff Angelini posted on 7/20/2011 2:35:00 PM 将应用程序UI的表现从Ui的逻辑中分离是一个好的想法.这种分离减少了代码耦合,代码更加干净, 甚至可以有 ...

  6. AMD与CMD(转载)

    JavaSript模块化   在了解AMD,CMD规范前,还是需要先来简单地了解下什么是模块化,模块化开发?       模块化是指在解决某一个复杂问题或者一系列的杂糅问题时,依照一种分类的思维把问题 ...

  7. 媒体查询(pc端,移动端不同布局)

    媒体查询语法: 1.内联写法:and之后必须有空格@media screen and (min-width:960px //判断浏览器大小条件){body{background:red} //常规的样 ...

  8. CSS样式,雪碧,图片替换,渐变小析

    Css基础2: 相对长度单位:em,rem,px,%绝对长度单位:厘米等(不用)颜色单位:rgb,rgb的百分比,16进制(#),颜色名称字体:font-size:为了更好适合点阵,尽量使用偶数fon ...

  9. bzoj3648: 寝室管理(环套树+点分治)

    好题..写了两个半小时hh,省选的时候要一个半小时内调出这种题目还真是难= = 题目大意是给一棵树或环套树,求点距大于等于K的点对数 这里的树状数组做了一点变换.不是向上更新和向下求和,而是反过来,所 ...

  10. JavaScript鼠标经过图片的放大镜效果

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...