• SqlLiteHelper:基于C#的SqlLite数据库访问基类


    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Web;
    using System.Configuration;
    using System.Data;
    using System.Data.SQLite;
    namespace DAL
    {
    public class Sqlite
    {
    /// <summary>
    /// 获得连接对象
    /// </summary>
    /// <returns></returns>
    public static SQLiteConnection GetSQLiteConnection()
    {
    return new SQLiteConnection("Data Source=" + System.Web.HttpContext.Current.Server.MapPath(System.Configuration.ConfigurationManager.AppSettings["db"].ToString()));
    }
    private static void PrepareCommand(SQLiteCommand cmd, SQLiteConnection conn, string cmdText, params object[] p)
    {
    if (conn.State != ConnectionState.Open)
    conn.Open();
    cmd.Parameters.Clear();
    cmd.Connection = conn;
    cmd.CommandText = cmdText;
    cmd.CommandType = CommandType.Text;
    cmd.CommandTimeout = 30;
    if (p != null)
    {
    foreach (object parm in p)
    cmd.Parameters.AddWithValue(string.Empty, parm);
    //for (int i = 0; i < p.Length; i++)
    // cmd.Parameters[i].Value = p[i];
    }
    }
    public static DataSet ExecuteDataset(string cmdText, params object[] p)
    {
    DataSet ds = new DataSet();
    SQLiteCommand command = new SQLiteCommand();
    using (SQLiteConnection connection = GetSQLiteConnection())
    {
    PrepareCommand(command, connection, cmdText, p);
    SQLiteDataAdapter da = new SQLiteDataAdapter(command);
    da.Fill(ds);
    }
    return ds;
    }
    public static DataRow ExecuteDataRow(string cmdText, params object[] p)
    {
    DataSet ds = ExecuteDataset(cmdText, p);
    if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
    return ds.Tables[0].Rows[0];
    return null;
    }
    /// <summary>
    /// 返回受影响的行数
    /// </summary>
    /// <param name="cmdText">a</param>
    /// <param name="commandParameters">传入的参数</param>
    /// <returns></returns>
    public static int ExecuteNonQuery(string cmdText, params object[] p)
    {
    SQLiteCommand command = new SQLiteCommand();
    using (SQLiteConnection connection = GetSQLiteConnection())
    {
    PrepareCommand(command, connection, cmdText, p);
    return command.ExecuteNonQuery();
    }
    }
    /// <summary>
    /// 返回SqlDataReader对象
    /// </summary>
    /// <param name="cmdText"></param>
    /// <param name="commandParameters">传入的参数</param>
    /// <returns></returns>
    public static SQLiteDataReader ExecuteReader(string cmdText, params object[] p)
    {
    SQLiteCommand command = new SQLiteCommand();
    SQLiteConnection connection = GetSQLiteConnection();
    try
    {
    PrepareCommand(command, connection, cmdText, p);
    SQLiteDataReader reader = command.ExecuteReader(CommandBehavior.CloseConnection);
    return reader;
    }
    catch
    {
    connection.Close();
    throw;
    }
    }
    /// <summary>
    /// 返回结果集中的第一行第一列,忽略其他行或列
    /// </summary>
    /// <param name="cmdText"></param>
    /// <param name="commandParameters">传入的参数</param>
    /// <returns></returns>
    public static object ExecuteScalar(string cmdText, params object[] p)
    {
    SQLiteCommand cmd = new SQLiteCommand();
    using (SQLiteConnection connection = GetSQLiteConnection())
    {
    PrepareCommand(cmd, connection, cmdText, p);
    return cmd.ExecuteScalar();
    }
    }
    /// <summary>
    /// 分页
    /// </summary>
    /// <param name="recordCount"></param>
    /// <param name="pageIndex"></param>
    /// <param name="pageSize"></param>
    /// <param name="cmdText"></param>
    /// <param name="countText"></param>
    /// <param name="p"></param>
    /// <returns></returns>
    public static DataSet ExecutePager(ref int recordCount, int pageIndex, int pageSize, string cmdText, string countText, params object[] p)
    {
    if (recordCount < 0)
    recordCount = int.Parse(ExecuteScalar(countText, p).ToString());
    DataSet ds = new DataSet();
    SQLiteCommand command = new SQLiteCommand();
    using (SQLiteConnection connection = GetSQLiteConnection())
    {
    PrepareCommand(command, connection, cmdText, p);
    SQLiteDataAdapter da = new SQLiteDataAdapter(command);
    da.Fill(ds, (pageIndex - 1) * pageSize, pageSize, "result");
    }
    return ds;
    }
    }
    }
  • 相关阅读:
    有用的sql语句积累
    spring boot sso 学习资源
    notepad++ 常用快捷键
    artTemplate的使用总结
    ajax完整请求
    03 Mybatis框架---学习笔记1--框架的概念及优势
    02 Struts2框架----学习笔记2(了解一下,已过时)
    IDEA 获取类的相对路径和绝对路径
    01 Struts2框架学习(了解一下,已过时)
    喜马拉雅 FM 已购付费音频下载
  • 原文地址:https://www.cnblogs.com/kevinGao/p/2555413.html
Copyright © 2020-2023  润新知