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. 多线程之互斥锁(By C++)

    首先贴一段win32API实现的多线程的代码,使用CreateThread实现,如果不要传参数,就把第四个参数设为NULL #include<Windows.h> #include< ...

  2. Linux查看系统运行情况

    http://elinux.org/Runtime_Memory_Measurement

  3. 本地xdebug调试搭建 Laravel+homestead+phpstorm

    1.在homestead virtual box安装和配置xdebug 先在终端运行vagrant up 和 vagrant ssh,ssh远程到homestead,然后复制以下代码到一个shell文 ...

  4. 热浪[TYVJ1031]

    描述 德克萨斯纯朴的民眾们这个夏天正在遭受巨大的热浪!!!他们的德克萨斯长角牛吃起来不错,可是他们并不是很擅长生產富含奶油的乳製品.Farmer John此时以先天下之忧而忧,后天下之乐而乐的精神,身 ...

  5. unity 改变场景

    public class GameManager : MonoBehaviour { public void OnStartGame(int sceneName) { SceneManager.Loa ...

  6. Jaunt登陆索尼PSVR,为其提供大量VR视频

    索尼PS VR自从推出就广受用户青睐,当然不仅仅是其低于高端VR头显的价格,还在于PS VR提供的丰富游戏内容.近日,国外视频网站Jaunt还专门为PSVR推出了专版APP,为其提供超过 150 个沉 ...

  7. ssh自动输入密码脚本 切换目录脚本

    利用expect的,首先查看expect,命令:which expect #!/usr/bin/expect -f spawn ssh 用户名@ip地址 expect "assword:&q ...

  8. weex append

    append有两个值:其中的一个是tree, 另外一个是node. 不会像数据绑定一样对最后的渲染结果有影响.但它决定是否会影响整个节点的重绘还是只是某一个地方的内容会重绘. append=" ...

  9. Devexpress

    1.隐藏最上面的GroupPanel gridView1.OptionsView.ShowGroupPanel=false; 2.得到当前选定记录某字段的值 sValue=Table.Rows[gri ...

  10. duplicate symbols for architecture arm64 after xCode 8.0 update

    Xcode IDE  从7.3.1 update 到 8.0 之后出现的问题 一个错误把我困扰了两天之久,最终找到解决办法我欣喜若狂. 错误发生原因:Xcode IDE  从7.3.1 update ...