由于sqlserver安装复杂,维护困难,对于存储一些简单的数据,使用SQLite无疑是个好的选择

经过我的了解,我发现无论是SQLSERVER,还是MySQL,还是SQLite,他们的关键词都是大差不差的

比如SQLSERVER的connection关键词就是SqlConnection,SQLite的就是SQLiteConnection

今天是第一次使用SQLite,写了个帮助类,使用的时候直接调用就可以,非常方便

现在配置文件中写入以下代码

  <connectionStrings>
    <add name="SQLiteConnectionString"
         connectionString="Data Source=database.sqlite;"
         providerName="System.Data.SQLite" />
  </connectionStrings>

然后新建一个类,名为SQLiteHelper

以下是帮助类的代码

string connstr = ConfigurationManager.ConnectionStrings["SQLiteConnectionString"].ConnectionString.ToString();
        //执行增、删、改的方法:ExecuteNonQuery,返回受影响的行数
        public int ExecuteNonQuery(string sql, params SQLiteParameter[] pms)
        {
            try
            {
                using (SQLiteConnection conn = new SQLiteConnection(connstr))
                {
                    using (SQLiteCommand cmd = new SQLiteCommand(sql, conn))
                    {
                        if (pms != null)
                        {
                            cmd.Parameters.AddRange(pms);
                        }
                        conn.Open();
                        return cmd.ExecuteNonQuery();
                    }
                }
            }
            catch (Exception ex)
            {
                // 处理异常,例如记录日志或抛出异常等操作  
                throw new Exception("An error occurred while executing the SQLite command: " + ex.Message);
            }

        }
        //将查出的数据装到table里,返回一个DataTable
        public DataTable GetDatatableData(string sql, params SQLiteParameter[] pms)
        {
            DataTable dt = new DataTable();
            try
            {
                using (SQLiteDataAdapter adapter = new SQLiteDataAdapter(sql, connstr))
                {
                    if (pms != null)
                    {
                        adapter.SelectCommand.Parameters.AddRange(pms);
                    }
                    adapter.Fill(dt);
                }
            }
            catch (Exception ex)
            {
                // 记录或处理异常,例如输出到日志或向用户显示错误信息  
                Console.WriteLine(ex.Message);
            }
            return dt;
        }

        //将查出的数据装到DataSet里,返回一个DataSet
        public DataSet GetDataSet(string sql, params SQLiteParameter[] pms)
        {
            DataSet dataSet = new DataSet();
            try
            {
                using (SQLiteDataAdapter adapter = new SQLiteDataAdapter(sql, connstr))
                {
                    if (pms != null)
                    {
                        adapter.SelectCommand.Parameters.AddRange(pms);
                    }
                    adapter.Fill(dataSet);
                }
            }
            catch (Exception ex)
            {
                // 记录或处理异常,例如输出到日志或向用户显示错误信息  
                Console.WriteLine(ex.Message);
            }
            return dataSet;
        }

然后给出一个调用的方法示例,只需传入Sql语句和参数即可

/// <summary>
        /// 调用方法示例
        /// </summary>
        public void SomeMethod()
        {
            // 调用 GetDataSet 方法,传递 SQL 查询字符串和参数数组  
            string sql = "SELECT * FROM YourTable WHERE SomeColumn = @SomeValue";
            SQLiteParameter[] pms = {
                new SQLiteParameter("@SomeValue", "SomeValueToSearch")
            };
            SQLiteHelper helper = new SQLiteHelper();
            // 调用 GetDataSet 方法,并获取返回的 DataSet  
            DataSet dataSet = helper.GetDataSet(sql, pms);

        }

然后就可以操作得到的dataset了