zoukankan      html  css  js  c++  java
  • SQLiteHelper

    SQLiteHelper 帮助类 [一]

    SQLiteHelper 帮助类 [二]

    SQLiteHelper 帮助类 [三]

    View Code
      1 using System;
      2 using System.Collections.Generic;
      3 using System.Linq;
      4 using System.Text;
      5 using System.Data.SQLite;//
      6 using System.Data;//
      7 using System.IO;//
      8 using System.Data.Common;//
      9 using System.Configuration;//
     10 
     11 namespace SQLiteHelper
     12 {
     13     public class SQLiteHelper43
     14     {
     15         
     16         #region 参数化查询
     17 
     18         /// <summary>
     19         /// 获得连接对象
     20         /// </summary>
     21         /// <returns></returns>
     22         public static SQLiteConnection GetSQLiteConnection()
     23         {
     24             return new SQLiteConnection("Data Source=" + System.Web.HttpContext.Current.Server.MapPath(ConfigurationManager.AppSettings["db"].ToString()));
     25         }
     26 
     27         private static void PrepareCommand(SQLiteCommand cmd, SQLiteConnection conn, string cmdText, params object[] p)
     28         {
     29             if (conn.State != ConnectionState.Open)
     30                 conn.Open();
     31             cmd.Parameters.Clear();
     32             cmd.Connection = conn;
     33             cmd.CommandText = cmdText;
     34             cmd.CommandType = CommandType.Text;
     35             cmd.CommandTimeout = 30;
     36             if (p != null)
     37             {
     38                 foreach (object parm in p)
     39                     cmd.Parameters.AddWithValue(string.Empty, parm);
     40                 //for (int i = 0; i < p.Length; i++)
     41                 //    cmd.Parameters[i].Value = p[i];
     42             }
     43         }
     44 
     45         public static DataSet ExecuteDataset(string cmdText, params object[] p)
     46         {
     47             DataSet ds = new DataSet();
     48             SQLiteCommand command = new SQLiteCommand();
     49             using (SQLiteConnection connection = GetSQLiteConnection())
     50             {
     51                 PrepareCommand(command, connection, cmdText, p);
     52                 SQLiteDataAdapter da = new SQLiteDataAdapter(command);
     53                 da.Fill(ds);
     54             }
     55             return ds;
     56         }
     57 
     58         public static DataRow ExecuteDataRow(string cmdText, params object[] p)
     59         {
     60             DataSet ds = ExecuteDataset(cmdText, p);
     61             if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
     62                 return ds.Tables[0].Rows[0];
     63             return null;
     64         }
     65 
     66         /// <summary>
     67         /// 返回受影响的行数
     68         /// </summary>
     69         /// <param name="cmdText">a</param>
     70         /// <param name="commandParameters">传入的参数</param>
     71         /// <returns></returns>
     72         public static int ExecuteNonQuery(string cmdText, params object[] p)
     73         {
     74             SQLiteCommand command = new SQLiteCommand();
     75             using (SQLiteConnection connection = GetSQLiteConnection())
     76             {
     77                 PrepareCommand(command, connection, cmdText, p);
     78                 return command.ExecuteNonQuery();
     79             }
     80         }
     81 
     82         /// <summary>
     83         /// 返回SqlDataReader对象
     84         /// </summary>
     85         /// <param name="cmdText"></param>
     86         /// <param name="commandParameters">传入的参数</param>
     87         /// <returns></returns>
     88         public static SQLiteDataReader ExecuteReader(string cmdText, params object[] p)
     89         {
     90             SQLiteCommand command = new SQLiteCommand();
     91             SQLiteConnection connection = GetSQLiteConnection();
     92             try
     93             {
     94                 PrepareCommand(command, connection, cmdText, p);
     95                 SQLiteDataReader reader = command.ExecuteReader(CommandBehavior.CloseConnection);
     96                 return reader;
     97             }
     98             catch
     99             {
    100                 connection.Close();
    101                 throw;
    102             }
    103         }
    104 
    105         /// <summary>
    106         /// 返回结果集中的第一行第一列,忽略其他行或列
    107         /// </summary>
    108         /// <param name="cmdText"></param>
    109         /// <param name="commandParameters">传入的参数</param>
    110         /// <returns></returns>
    111         public static object ExecuteScalar(string cmdText, params object[] p)
    112         {
    113             SQLiteCommand cmd = new SQLiteCommand();
    114             using (SQLiteConnection connection = GetSQLiteConnection())
    115             {
    116                 PrepareCommand(cmd, connection, cmdText, p);
    117                 return cmd.ExecuteScalar();
    118             }
    119         }
    120 
    121         /// <summary>
    122         /// 分页
    123         /// </summary>
    124         /// <param name="recordCount"></param>
    125         /// <param name="pageIndex"></param>
    126         /// <param name="pageSize"></param>
    127         /// <param name="cmdText"></param>
    128         /// <param name="countText"></param>
    129         /// <param name="p"></param>
    130         /// <returns></returns>
    131         public static DataSet ExecutePager(ref int recordCount, int pageIndex, int pageSize, string cmdText, string countText, params object[] p)
    132         {
    133             if (recordCount < 0)
    134                 recordCount = int.Parse(ExecuteScalar(countText, p).ToString());
    135             DataSet ds = new DataSet();
    136             SQLiteCommand command = new SQLiteCommand();
    137             using (SQLiteConnection connection = GetSQLiteConnection())
    138             {
    139                 PrepareCommand(command, connection, cmdText, p);
    140                 SQLiteDataAdapter da = new SQLiteDataAdapter(command);
    141                 da.Fill(ds, (pageIndex - 1) * pageSize, pageSize, "result");
    142             }
    143             return ds;
    144         }
    145         #endregion
    146     }
    147 }
  • 相关阅读:
    Oracle11g备份与恢复-手工备份与恢复
    undo段及区的状态和使用
    图解一个事务操作流程
    Oracle11g备份与恢复
    undo表空间概述-1
    事务的隔离级别
    事务概述
    系统改变号(SCN)详解
    实例崩溃恢复原理--检查点队列的作用
    Oracle-检查点队列
  • 原文地址:https://www.cnblogs.com/xyzla/p/2563474.html
Copyright © 2011-2022 走看看