Sqlite通用类库

using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SQLite;
using System.Windows.Forms; namespace CommonLib
{
public static class DB_Sqlite
{
public static void CreateDB(string datasource,ArrayList sqlList)
{
if ((datasource == null) || (datasource == "") || (datasource.Length <= ))
{
MessageBox.Show("数据库名不能为空");
return;
}
if ((sqlList == null) || (sqlList.Count <= ))
{
MessageBox.Show("创建数据库表的语句不能为空");
return;
} try
{
if (!File.Exists(@datasource))
{
System.Data.SQLite.SQLiteConnection.CreateFile(datasource);
System.Data.SQLite.SQLiteConnection conn = new System.Data.SQLite.SQLiteConnection();
System.Data.SQLite.SQLiteConnectionStringBuilder connstr = new System.Data.SQLite.SQLiteConnectionStringBuilder();
connstr.DataSource = datasource;
//connstr.Password = "";//设置密码,SQLite ADO.NET实现了数据库密码保护
conn.ConnectionString = connstr.ToString();
conn.Open();
System.Data.SQLite.SQLiteCommand cmd = new System.Data.SQLite.SQLiteCommand(); foreach(Object OO in sqlList)
{
cmd.CommandText = OO.ToString();
cmd.Connection = conn;
cmd.ExecuteNonQuery();
}
conn.Close();
}
}
catch (Exception ex)
{
MessageBox.Show("SQLite数据库:" + ex.ToString());
}
}
public static Int32 Fun_ExeUpdate(string strSql, string datasource)
{
Int32 nExcnt = ;
try
{
System.Data.SQLite.SQLiteConnection conn = new System.Data.SQLite.SQLiteConnection();
System.Data.SQLite.SQLiteConnectionStringBuilder connstr = new System.Data.SQLite.SQLiteConnectionStringBuilder();
conn = new System.Data.SQLite.SQLiteConnection();
connstr = new System.Data.SQLite.SQLiteConnectionStringBuilder();
connstr.DataSource = datasource;
//connstr.Password = "";//设置密码,SQLite ADO.NET实现了数据库密码保护 conn.ConnectionString = connstr.ToString();
conn.Open();
System.Data.SQLite.SQLiteCommand cmd = new System.Data.SQLite.SQLiteCommand(conn);
cmd.CommandText = strSql;
nExcnt = cmd.ExecuteNonQuery();
cmd.Dispose();
conn.Close();
#region 已经注释的代码
//using (SQLiteConnection connection = new SQLiteConnection(connstr.ToString ()))
//{
// connection.Open();
// using (SQLiteCommand command=new SQLiteCommand (strSql ,connection ))
// {
// command.ExecuteNonQuery();
// command.Dispose(); // } // connection.Close(); //}
#endregion
}
catch (Exception ex)
{
MessageBox.Show("SQLite数据库:" + ex.ToString());
}
return nExcnt;
} public static Object Fun_ExeScaler(string strSql, string datasource)
{
Object nExcnt = ;
try
{
System.Data.SQLite.SQLiteConnection conn = new System.Data.SQLite.SQLiteConnection();
System.Data.SQLite.SQLiteConnectionStringBuilder connstr = new System.Data.SQLite.SQLiteConnectionStringBuilder();
conn = new System.Data.SQLite.SQLiteConnection();
connstr = new System.Data.SQLite.SQLiteConnectionStringBuilder();
connstr.DataSource = datasource;
//connstr.Password = "";//设置密码,SQLite ADO.NET实现了数据库密码保护 conn.ConnectionString = connstr.ToString();
conn.Open();
System.Data.SQLite.SQLiteCommand cmd = new System.Data.SQLite.SQLiteCommand(conn);
cmd.CommandText = strSql;
nExcnt = cmd.ExecuteScalar();
cmd.Dispose();
conn.Close();
}
catch (Exception ex)
{
MessageBox.Show("SQLite数据库:" + ex.ToString());
}
return nExcnt;
} public static Int32 Fun_ExeUpdate_TR(ref ArrayList strColl, string datasource)
{
Int32 nExcnt = ;
SQLiteTransaction tran = null;
try
{
System.Data.SQLite.SQLiteConnection conn = new System.Data.SQLite.SQLiteConnection();
System.Data.SQLite.SQLiteConnectionStringBuilder connstr = new System.Data.SQLite.SQLiteConnectionStringBuilder();
connstr.DataSource = datasource;
//connstr.Password = "";//设置密码,SQLite ADO.NET实现了数据库密码保护
conn.ConnectionString = connstr.ToString();
conn.Open();
System.Data.SQLite.SQLiteCommand cmd = new System.Data.SQLite.SQLiteCommand(conn);
tran = conn.BeginTransaction();
cmd.Transaction = tran;
foreach (object obj in strColl)
{
cmd.CommandText = obj.ToString();
cmd.ExecuteNonQuery();
}
tran.Commit();
}
catch
{
tran.Rollback();
} return nExcnt;
} public static DataTable Fun_Quary(string strsql, string datasource)
{
DataTable data = new DataTable();
try
{
System.Data.SQLite.SQLiteConnection conn = new System.Data.SQLite.SQLiteConnection();
System.Data.SQLite.SQLiteConnectionStringBuilder connstr = new System.Data.SQLite.SQLiteConnectionStringBuilder(); conn = new System.Data.SQLite.SQLiteConnection();
connstr = new System.Data.SQLite.SQLiteConnectionStringBuilder();
connstr.DataSource = datasource;
//connstr.Password = "";//设置密码,SQLite ADO.NET实现了数据库密码保护
conn.ConnectionString = connstr.ToString();
conn.Open();
System.Data.SQLite.SQLiteCommand cmd = new System.Data.SQLite.SQLiteCommand(conn);
cmd.CommandText = strsql;
SQLiteDataAdapter adapter = new SQLiteDataAdapter(cmd);
adapter.Fill(data);
cmd.Dispose();
conn.Close();
}
catch (Exception ex)
{
MessageBox.Show("SQLite数据库:" + ex.ToString());
}
return data;
}
}
}

DB通用类:Sqlite通用类库的更多相关文章

  1. DB通用类:SQL Server 通用类库

    SQLServer通用类A using System; using System.Data; using System.Data.SqlClient; using System.Collections ...

  2. mongdo通用类(C#版)

    日前从公司离职,很快,还没休息就步入了现在的公司,开始跟着公司的脚步走. 公司的项目基本都是大数据的,所以在数据库上大部分都是使用Mongodb和Redis,基本都是Nosql型的数据库为主.以前自己 ...

  3. Django 1.6 基于类的通用视图

    Django 1.6 基于类的通用视图 最初 django 的视图都是用函数实现的,后来开发出一些通用视图函数,以取代某些常见的重复性代码.通用视图就像是一些封装好的处理器,使用它们的时候只须要给出特 ...

  4. Django子应用里的通用类混合视图处理

    # 子应用的views.py此文件用于编写Web应用视图,处理复杂的业务逻辑 #导入方法视图模板 from django.shortcuts import render #导包 from django ...

  5. 15类Android通用流行框架

    15类Android通用流行框架 Android流行框架 缓存 DiskLruCache Java实现基于LRU的磁盘缓存 图片加载 Android Universal Image Loader 一个 ...

  6. 用基于类的通用视图处理表单(Class-based generic views)

    处理表单通常包含3步: 初始化GET(空白的后者预填充的表单) POST非法数据(通常重新显示带有错误信息的表单) POST合法数据(提交数据并重定向) 为了将你从这些烦人的重复步骤中解救出来,Dja ...

  7. poi导出excel通用类

    一.关键的通用类public class PoiExportUtils {    private static HSSFWorkbook workBook; public PoiExportUtils ...

  8. NPOI MVC 模型导出Excel通用类

    通用类: public enum DataTypeEnum { Int = , Float = , Double = , String = , DateTime = , Date = } public ...

  9. MVC NPOI Linq导出Excel通用类

    之前写了一个模型导出Excel通用类,但是在实际应用中,可能不是直接导出模型,而是通过Linq查询后获取到最终结果再导出 通用类: public enum DataTypeEnum { Int = , ...

随机推荐

  1. ES5新增数组方法

    forEach/map   every/some  indexOf/lastIndexOf  filter reduce Array.isArray

  2. 用Promise对象实现的 Ajax 操作

  3. 为什么 PCB 生产时推荐出 Gerber 给工厂?

    为什么 PCB 生产时推荐出 Gerber 给工厂? 事情是这样的,有一天电工王工,画了一块 PCB,发给 PCB 板厂. 过了几天 PCB 回来了,一看不对呀,这里的丝印怎么少了,那里怎么多了几条线 ...

  4. taro 开发注意点

    taro 开发注意点: 注意点 原因 如果要支持 React Native 端,必须采用 Flex 布局,并且样式选择器仅支持类选择器,且不支持 组合器 Taro RN 端是基于 Expo,因此不支持 ...

  5. JAVA_HOME 设置为JDK 7无效

    场景: Window 10中有Jdk 7和jdk8, 还有Oracle配置 环境变量的配置如下 然后JAVA_HOME 设置为java 7 但是java -version显示为java 8 解决方法 ...

  6. ulimit设置内存限制是否有效

    如何使用ulimit限制物理内存 限制物理内存 $ ulimit -m 512000 经测试,无效. 限制物理内存不起作用,ulimit不支持限制物理内存,可见man ulimit手册 -m The ...

  7. SystemParametersinfo 用法

    var   BmpPath: PChar; begin   BmpPath := 'C:\Temp\Test.bmp';   SystemParametersInfo(SPI_SETDESKWALLP ...

  8. JavaScript之WebSocket技术详解

    概述 HTTP协议是一种无状态协议,服务器端本身不具有识别客户端的能力,必须借助外部机制,比如session和cookie,才能与特定客户端保持对话.这多多少少带来一些不便,尤其在服务器端与客户端需要 ...

  9. 跟未名学Office - PPT核心:表达

    目录 第一章. PPT核心:表达    2 第一节 观点    2 第二节 数据来源    2 第三节 逻辑顺序    3 PPT核心:表达 观点 1    vs    N 要表达什么? 为什么要做成 ...

  10. 用Matlab进行部分分式展开

    [r p k]=residue[num,den] 例如H(s)=(2s3+5s2+3s+6)/(s3+6s2+11s+6) num=[2 5 3 6]; den=[1 6 11 6]; [r p k] ...