zoukankan      html  css  js  c++  java
  • 备份sqlite操作

            /// <summary>
            
    /// 执行语句
            
    /// </summary>
            
    /// <param name="dbPath"></param>
            
    /// <param name="sql"></param>
            static void ExecSql(string dbPath, string sql)
            {
                ExecSql(dbPath, sql, 
    null);
            }

            
    /// <summary>
            
    /// 执行语句
            
    /// </summary>
            
    /// <param name="dbPath"></param>
            
    /// <param name="sql"></param>
            
    /// <param name="prams"></param>
            static void ExecSql(string dbPath, string sql, SQLiteParameter[] prams)
            {
                
    using (SQLiteConnection conn = new SQLiteConnection("Data Source=" + dbPath))
                {
                    conn.Open();
                    
    using (SQLiteCommand cmd = new SQLiteCommand(sql, conn))
                    {
                        
    if (prams != null)
                        {
                            
    foreach (SQLiteParameter parameter in prams)
                            {
                                cmd.Parameters.Add(parameter);
                            }
                        }
                        cmd.ExecuteNonQuery();
                        cmd.Dispose();
                    }
                    conn.Close();
                    conn.Dispose();
                }
            }

            
    /// <summary>
            
    /// 执行查询
            
    /// </summary>
            
    /// <param name="dbPath"></param>
            
    /// <param name="sql"></param>
            
    /// <param name="fn"></param>
            static void ReadSql(string dbPath, string sql, Action<SQLiteDataReader> fn)
            {
                ReadSql(dbPath, sql, fn, 
    null);
            }

            
    /// <summary>
            
    /// 执行查询
            
    /// </summary>
            
    /// <param name="dbPath"></param>
            
    /// <param name="sql"></param>
            
    /// <param name="fn"></param>
            
    /// <param name="prams"></param>
            static void ReadSql(string dbPath, string sql, Action<SQLiteDataReader> fn, SQLiteParameter[] prams)
            {
                
    using (SQLiteConnection conn = new SQLiteConnection("Data Source=" + dbPath))
                {
                    conn.Open();
                    
    using (SQLiteCommand cmd = new SQLiteCommand(sql, conn))
                    {
                        
    if (prams != null)
                        {
                            
    foreach (SQLiteParameter parameter in prams)
                            {
                                cmd.Parameters.Add(parameter);
                            }
                        }
                        
    using (SQLiteDataReader rs = cmd.ExecuteReader())
                        {                        
                            
    while (rs.Read())
                            {
                                fn(rs);
                            }
                            rs.Close();
                            rs.Dispose();
                        }
                        cmd.Dispose();
                    }
                    conn.Close();
                    conn.Dispose();
                }
            }
  • 相关阅读:
    chapter4.6生成器
    chapter4.4、递归
    chapter4.3、函数执行流程
    chapter4.2、函数返回值
    直接插入排序
    打印三角型的练习
    杂记
    linux top命令
    makefile 中的 := , += ,?=
    makefile中的shell语法 || Makefile中的@
  • 原文地址:https://www.cnblogs.com/jiang_zheng/p/sqlite.html
Copyright © 2011-2022 走看看