using System;
using System.Data;
using System.Data.SQLite; namespace SqliteConsoleApp
{
/// <summary>
/// SQLite 助手
/// </summary>
public sealed class SQLiteHelper
{
private const string ConnectionStr = "Data Source=recipes.s3db";
private static SQLiteHelper _instance;
private static readonly object Locker = new object (); private SQLiteHelper()
{
} /// <summary>
/// 获取实例
/// </summary>
/// <returns></returns>
public static SQLiteHelper GetInstance()
{
if (_instance == null )
{
lock (Locker)
{
if (_instance == null )
{
_instance = new SQLiteHelper ();
}
}
} return _instance;
} /// <summary>
/// 获取数据表
/// </summary>
/// <param name="cmdText"> 需要执行的命令文本 </param>
/// <returns> 一个数据表集合 </returns>
public DataTable GetDataTable( string cmdText)
{
var dt = new DataTable(); try
{
using (var conn = new SQLiteConnection (ConnectionStr))
{
conn.Open();
var cmd = new SQLiteCommand(conn) {CommandText = cmdText};
using (var reader = cmd.ExecuteReader())
{
dt.Load(reader);
}
}
}
catch (Exception e)
{
throw new Exception(e.Message);
} return dt;
} /// <summary>
/// 执行非查询命令
/// </summary>
/// <param name="cmdText"> 需要执行的命令文本 </param>
/// <returns> 返回更新的行数 </returns>
public int ExecuteNonQuery( string cmdText)
{
using (var conn = new SQLiteConnection (ConnectionStr))
{
conn.Open();
var cmd = new SQLiteCommand(conn) {CommandText = cmdText};
var rowsUpdated = cmd.ExecuteNonQuery(); return rowsUpdated;
}
} /// <summary>
/// 执行检索单项命令
/// </summary>
/// <param name="cmdText"> 需要执行的命令文本 </param>
/// <returns> 一个字符串 </returns>
public string ExecuteScalar( string cmdText)
{
using (var conn = new SQLiteConnection (ConnectionStr))
{
conn.Open();
var cmd = new SQLiteCommand(conn) {CommandText = cmdText};
var value = cmd.ExecuteScalar(); if (value != null )
{
return value.ToString();
}
} return "" ;
}
}
}

[C#] 简单的 Helper 封装 -- SQLiteHelper的更多相关文章

  1. [C#] 简单的 Helper 封装 -- RegularExpressionHelper

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  2. [C#] 简单的 Helper 封装 -- SecurityHelper 安全助手:封装加密算法(MD5、SHA、HMAC、DES、RSA)

    using System; using System.IO; using System.Security.Cryptography; using System.Text; namespace Wen. ...

  3. [C#] 简单的 Helper 封装 -- RandomHelper

    using System; namespace Wen.Helpers { /// <summary> /// 随机数助手 /// </summary> public seal ...

  4. [C#] 简单的 Helper 封装 -- CookieHelper

    using System; using System.Web; namespace ConsoleApplication5 { /// <summary> /// Cookie 助手 // ...

  5. 简单的 Helper 封装 -- CookieHelper

    using System; using System.Web; namespace ConsoleApplication5 { /// <summary> /// Cookie 助手 // ...

  6. 简单的 Helper 封装 -- SecurityHelper 安全助手:封装加密算法(MD5、SHA、HMAC、DES、RSA)

    using System; using System.IO; using System.Security.Cryptography; using System.Text; namespace Wen. ...

  7. 超简单的okHttpUtils封装(下)

      版权声明:转载请注明出处:http://blog.csdn.net/piaomiao8179 https://blog.csdn.net/piaomiao8179/article/details/ ...

  8. 简单二次封装的Golang图像处理库:图片裁剪

    简单二次封装的Golang图像处理库:图片裁剪 一.功能 Go语言下的官方图像处理库 简单封装后对jpg和png图像进行缩放/裁剪的库 二.使用说明 1.首先下载 go get -v -u githu ...

  9. 简单方便统一封装的傻瓜式GET/POST库AliasNet正式公布~开源喽~

    在进行网页自动化时我们做得最多的工作就是不停的往某个URL GET/POST数据并得到相应的Response,通过分析Response的结果再进行下一步操作,通过网页自动化我们可以做很多工作,比如去某 ...

随机推荐

  1. Centos6.5下编译安装mysql 5.6

    一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server rpm -qa | grep mysql 有的话通过下面的命令来卸载掉 rpm -e mysql //普通删除模式 rpm -e ...

  2. Base64编码

    Base64编码 写在前面 今天在做一个Android app时遇到了一个问题:Android端采用ASE对称加密的数据在JavaWeb(jre1.8.0_7)后台解密时,居然解密失败了!经过测试后发 ...

  3. shell简介

    Shell作为命令语言,它交互式地解释和执行用户输入的命令:作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支. shell使用的熟练程度反映了用户对U ...

  4. 关于Raid0,Raid1,Raid5,Raid10的总结

    RAID0 定义: RAID 0又称为Stripe或Striping,它代表了所有RAID级别中最高的存储性能.RAID 0提高存储性能的原理是把连续的数据分散到多个磁盘上存取,这样,系统有数据请求就 ...

  5. Linux常用命令操作

    系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 - (SMBIOS ...

  6. mount报错: you must specify the filesystem type

    在linux mount /dev/vdb 到 /home 分区时报错: # mount /dev/vdb /homemount: you must specify the filesystem ty ...

  7. Linux基础介绍【第一篇】

    Linux简介 什么是操作系统? 操作系统,英文名称Operating System,简称OS,是计算机系统中必不可少的基础系统软件,它是应用程序运行以及用户操作必备的基础环境支撑,是计算机系统的核心 ...

  8. 【番外篇】ASP.NET MVC快速入门之免费jQuery控件库(MVC5+EF6)

    目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...

  9. SQL Server的AlwaysOn错误19456和41158

    SQL Server的AlwaysOn错误19456和41158 最近在公司搞异地数据库容灾,使用AlwaysOn的异地节点进行数据同步,在搭建的过程中遇到了一些问题 软件版本 SQL Server2 ...

  10. 分布式唯一ID生成服务

    SNService是一款基于分布式的唯一ID生成服务,主要用于提供大数量业务数据建立唯一ID的需要;服务提供最低10K/s的唯一ID请求处理.如果你部署服务的CPU资源达到4核的情况下那该服务最低可以 ...