25yicms利用ASP.NET(C#)+MSSQL技术全力打造功能最强大的营销型企业网站管理系统,企业做网站系统,做网站软件,提供div+css企业网站模板。
阅读内容

C#连接sqllite文件数据库的通用类代码


时间:2013/01/30   来源:企业网站管理系统
sqllite文件数据库由于轻巧而且占用内存小,并且执行的sql语句并不比较其它大型的数据库差,并且可以支持Windows/Linux/Unix等等主流的操作系统和多种程序语言相结合使用,所以利用范围比较广泛。

25亿企业网站管理系统在CMS行业中的突出特色,为了能够让系统执行更快速在某些功能方面也使用了sqllite文件数据库,现在为了让各技术人员更好的掌握25亿企业网站管理系统,现把C#连接sqllite文件数据库的通用类代码提供如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SQLite;
using System.Data.Common;
namespace CommUtils
{
   public abstract class SqlLiteHelper
    {
       public static string ConnSqlLiteDbPath = string.Empty;
       public static string ConnString
       {
           get
           {
               return string.Format(@"Data Source={0}", ConnSqlLiteDbPath);
           }
       }
       // 取datatable

       public static DataTable GetDataTable(string sSQL)
       {
           DataTable dt = null;
           try
           {
               SQLiteConnection conn = new SQLiteConnection(ConnString);
               conn.Open();
               SQLiteCommand cmd = new SQLiteCommand();
               cmd.CommandText = sSQL;
               cmd.Connection = conn;
               SQLiteDataAdapter dao = new SQLiteDataAdapter(cmd);
               dt = new DataTable();
               dao.Fill(dt);
           }
           catch
           {
           }
           return dt;
       }

       // 执行insert,update,delete 动作,也可以使用事务
       public static bool UpdateData(string sSQL,bool bUseTransaction)
       {
           int iResult = 0;
           if (!bUseTransaction)
           {
               try
               {
                  SQLiteConnection conn = new SQLiteConnection(ConnString);
                   conn.Open();
                   SQLiteCommand comm = new SQLiteCommand(conn);
                   comm.CommandText = sSQL;
                   iResult = comm.ExecuteNonQuery();
               }
               catch
               {
                   iResult = -1;
               }
           }
           else // 使用事务
           {
               DbTransaction trans =null;
               try
               {
                   SQLiteConnection conn = new SQLiteConnection(ConnString);
                   conn.Open();
                   trans = conn.BeginTransaction();
                   SQLiteCommand comm = new SQLiteCommand(conn);
                   comm.CommandText = sSQL;
                   iResult = comm.ExecuteNonQuery();
                   trans.Commit();
               }
               catch
               {
                   iResult = -1;
                   trans.Rollback();
               }
           }
           return iResult >0;
       }
    }
}

上述代码需要引用System.Data.SQLite,两个函数,GetDataTable(string sSQL)为获取数据存储在datatable中,UpdateData(string sSQL,bool bUseTransaction)可以执行执行insert,update,delete 动作。

UpdateData函数的使用实例:bool gwisqlitedrop = SqlLiteHelper.UpdateData("drop table " + TableName + "", true);把bUseTransaction参数设为true就可以了,或者设为flase也可以,只是执行不同的代码,但是结果是一样的。
作者: 网站设计@ 企业网站管理系统
原载: 25亿企业网站管理系统
版权所有。转载时必须以链接形式(http://www.25yi.com/sql/sqllitetongyong-287/)注明作者和原始出处及本声明。
点击次数:       打印此页  关闭