//using System; //using System.Collections; //using System.Collections.Specialized; //using System.Data; //using System.Data.SQLite; //using System.Configuration; //namespace Bro.Process.DataBase //{ // public class SQLiteHelper // { // //Êý¾Ý¿âÁ¬½Ó×Ö·û´® // public static string connectionString = ConfigurationManager.ConnectionStrings["DataBase"].ConnectionString; // public SQLiteHelper() { } // #region ¹«Ó÷½·¨ // public static int GetMaxID(string FieldName, string TableName) // { // string strsql = "select max(" + FieldName + ")+1 from " + TableName; // object obj = GetSingle(strsql); // if (obj == null) // { // return 1; // } // else // { // return int.Parse(obj.ToString()); // } // } // public static bool Exists(string strSql) // { // object obj = GetSingle(strSql); // int cmdresult; // if ((Object.Equals(obj, null)) || (Object.Equals(obj, System.DBNull.Value))) // { // cmdresult = 0; // } // else // { // cmdresult = int.Parse(obj.ToString()); // } // if (cmdresult == 0) // { // return false; // } // else // { // return true; // } // } // public static bool Exists(string strSql, params SQLiteParameter[] cmdParms) // { // object obj = GetSingle(strSql, cmdParms); // int cmdresult; // if ((Object.Equals(obj, null)) || (Object.Equals(obj, System.DBNull.Value))) // { // cmdresult = 0; // } // else // { // cmdresult = int.Parse(obj.ToString()); // } // if (cmdresult == 0) // { // return false; // } // else // { // return true; // } // } // #endregion // #region Ö´Ðмòµ¥SQLÓï¾ä // /// // /// Ö´ÐÐSQLÓï¾ä£¬·µ»ØÓ°ÏìµÄ¼Ç¼Êý // /// // /// SQLÓï¾ä // /// Ó°ÏìµÄ¼Ç¼Êý // public static int ExecuteSql(string SQLString) // { // using (SQLiteConnection connection = new SQLiteConnection(connectionString)) // { // using (SQLiteCommand cmd = new SQLiteCommand(SQLString, connection)) // { // try // { // connection.Open(); // int rows = cmd.ExecuteNonQuery(); // return rows; // } // catch (System.Data.SQLite.SQLiteException E) // { // connection.Close(); // throw new Exception(E.Message); // } // } // } // } // /// // /// Ö´ÐÐSQLÓï¾ä£¬ÉèÖÃÃüÁîµÄÖ´Ðеȴýʱ¼ä // /// // /// // /// // /// // public static int ExecuteSqlByTime(string SQLString, int Times) // { // using (SQLiteConnection connection = new SQLiteConnection(connectionString)) // { // using (SQLiteCommand cmd = new SQLiteCommand(SQLString, connection)) // { // try // { // connection.Open(); // cmd.CommandTimeout = Times; // int rows = cmd.ExecuteNonQuery(); // return rows; // } // catch (System.Data.SQLite.SQLiteException E) // { // connection.Close(); // throw new Exception(E.Message); // } // } // } // } // /// // /// Ö´ÐжàÌõSQLÓï¾ä£¬ÊµÏÖÊý¾Ý¿âÊÂÎñ¡£ // /// // /// ¶àÌõSQLÓï¾ä // public static bool ExecuteSqlTran(ArrayList SQLStringList) // { // bool isSuccess = false; // using (SQLiteConnection conn = new SQLiteConnection(connectionString)) // { // conn.Open(); // SQLiteCommand cmd = new SQLiteCommand(); // cmd.Connection = conn; // cmd.CommandText = "PRAGMA synchronous = OFF;"; // cmd.ExecuteNonQuery(); // SQLiteTransaction tx = conn.BeginTransaction(); // cmd.Transaction = tx; // try // { // for (int n = 0; n < SQLStringList.Count; n++) // { // string strsql = SQLStringList[n].ToString(); // if (strsql.Trim().Length > 1) // { // cmd.CommandText = strsql; // cmd.ExecuteNonQuery(); // } // } // tx.Commit(); // isSuccess = true; // } // catch (System.Data.SQLite.SQLiteException E) // { // tx.Rollback(); // isSuccess = false; // throw new Exception(E.Message); // } // } // return isSuccess; // } // /// // /// Ö´ÐдøÒ»¸ö´æ´¢¹ý³Ì²ÎÊýµÄµÄSQLÓï¾ä¡£ // /// // /// SQLÓï¾ä // /// ²ÎÊýÄÚÈÝ,±ÈÈçÒ»¸ö×Ö¶ÎÊǸñʽ¸´ÔÓµÄÎÄÕ£¬ÓÐÌØÊâ·ûºÅ£¬¿ÉÒÔͨ¹ýÕâ¸ö·½Ê½Ìí¼Ó // /// Ó°ÏìµÄ¼Ç¼Êý // public static int ExecuteSql(string SQLString, string content) // { // using (SQLiteConnection connection = new SQLiteConnection(connectionString)) // { // SQLiteCommand cmd = new SQLiteCommand(SQLString, connection); // SQLiteParameter myParameter = new SQLiteParameter("@content", DbType.String); // myParameter.Value = content; // cmd.Parameters.Add(myParameter); // try // { // connection.Open(); // int rows = cmd.ExecuteNonQuery(); // return rows; // } // catch (System.Data.SQLite.SQLiteException E) // { // throw new Exception(E.Message); // } // finally // { // cmd.Dispose(); // connection.Close(); // } // } // } // /// // /// Ö´ÐдøÒ»¸ö´æ´¢¹ý³Ì²ÎÊýµÄµÄSQLÓï¾ä¡£ // /// // /// SQLÓï¾ä // /// ²ÎÊýÄÚÈÝ,±ÈÈçÒ»¸ö×Ö¶ÎÊǸñʽ¸´ÔÓµÄÎÄÕ£¬ÓÐÌØÊâ·ûºÅ£¬¿ÉÒÔͨ¹ýÕâ¸ö·½Ê½Ìí¼Ó // /// Ó°ÏìµÄ¼Ç¼Êý // public static object ExecuteSqlGet(string SQLString, string content) // { // using (SQLiteConnection connection = new SQLiteConnection(connectionString)) // { // SQLiteCommand cmd = new SQLiteCommand(SQLString, connection); // SQLiteParameter myParameter = new SQLiteParameter("@content", DbType.String); // myParameter.Value = content; // cmd.Parameters.Add(myParameter); // try // { // connection.Open(); // object obj = cmd.ExecuteScalar(); // if ((Object.Equals(obj, null)) || (Object.Equals(obj, System.DBNull.Value))) // { // return null; // } // else // { // return obj; // } // } // catch (System.Data.SQLite.SQLiteException E) // { // throw new Exception(E.Message); // } // finally // { // cmd.Dispose(); // connection.Close(); // } // } // } // /// // /// ÏòÊý¾Ý¿âÀï²åÈëͼÏñ¸ñʽµÄ×Ö¶Î(ºÍÉÏÃæÇé¿öÀàËÆµÄÁíÒ»ÖÖʵÀý) // /// // /// SQLÓï¾ä // /// ͼÏñ×Ö½Ú,Êý¾Ý¿âµÄ×Ö¶ÎÀàÐÍΪimageµÄÇé¿ö // /// Ó°ÏìµÄ¼Ç¼Êý // public static int ExecuteSqlInsertImg(string strSQL, byte[] fs) // { // using (SQLiteConnection connection = new SQLiteConnection(connectionString)) // { // SQLiteCommand cmd = new SQLiteCommand(strSQL, connection); // SQLiteParameter myParameter = new SQLiteParameter("@fs", DbType.Binary); // myParameter.Value = fs; // cmd.Parameters.Add(myParameter); // try // { // connection.Open(); // int rows = cmd.ExecuteNonQuery(); // return rows; // } // catch (System.Data.SQLite.SQLiteException E) // { // throw new Exception(E.Message); // } // finally // { // cmd.Dispose(); // connection.Close(); // } // } // } // /// // /// Ö´ÐÐÒ»Ìõ¼ÆËã²éѯ½á¹ûÓï¾ä£¬·µ»Ø²éѯ½á¹û£¨object£©¡£ // /// // /// ¼ÆËã²éѯ½á¹ûÓï¾ä // /// ²éѯ½á¹û£¨object£© // public static object GetSingle(string SQLString) // { // using (SQLiteConnection connection = new SQLiteConnection(connectionString)) // { // using (SQLiteCommand cmd = new SQLiteCommand(SQLString, connection)) // { // try // { // connection.Open(); // object obj = cmd.ExecuteScalar(); // if ((Object.Equals(obj, null)) || (Object.Equals(obj, System.DBNull.Value))) // { // return null; // } // else // { // return obj; // } // } // catch (System.Data.SQLite.SQLiteException e) // { // connection.Close(); // throw new Exception(e.Message); // } // } // } // } // /// // /// Ö´ÐвéѯÓï¾ä£¬·µ»ØSQLiteDataReader(ʹÓø÷½·¨ÇмÇÒªÊÖ¹¤¹Ø±ÕSQLiteDataReaderºÍÁ¬½Ó) // /// // /// ²éѯÓï¾ä // /// SQLiteDataReader // public static SQLiteDataReader ExecuteReader(string strSQL) // { // SQLiteConnection connection = new SQLiteConnection(connectionString); // SQLiteCommand cmd = new SQLiteCommand(strSQL, connection); // try // { // connection.Open(); // SQLiteDataReader myReader = cmd.ExecuteReader(); // return myReader; // } // catch (System.Data.SQLite.SQLiteException e) // { // throw new Exception(e.Message); // } // //finally //²»ÄÜÔڴ˹رգ¬·ñÔò£¬·µ»ØµÄ¶ÔÏó½«ÎÞ·¨Ê¹Óà // //{ // // cmd.Dispose(); // // connection.Close(); // //} // } // /// // /// Ö´ÐвéѯÓï¾ä£¬·µ»ØDataSet // /// // /// ²éѯÓï¾ä // /// DataSet // public static DataSet Query(string SQLString) // { // using (SQLiteConnection connection = new SQLiteConnection(connectionString)) // { // DataSet ds = new DataSet(); // try // { // connection.Open(); // SQLiteDataAdapter command = new SQLiteDataAdapter(SQLString, connection); // command.Fill(ds, "ds"); // } // catch (System.Data.SQLite.SQLiteException ex) // { // throw new Exception(ex.Message); // } // return ds; // } // } // public static DataSet Query(string SQLString, string TableName) // { // using (SQLiteConnection connection = new SQLiteConnection(connectionString)) // { // DataSet ds = new DataSet(); // try // { // connection.Open(); // SQLiteDataAdapter command = new SQLiteDataAdapter(SQLString, connection); // command.Fill(ds, TableName); // } // catch (System.Data.SQLite.SQLiteException ex) // { // throw new Exception(ex.Message); // } // return ds; // } // } // /// // /// Ö´ÐвéѯÓï¾ä£¬·µ»ØDataSet,ÉèÖÃÃüÁîµÄÖ´Ðеȴýʱ¼ä // /// // /// // /// // /// // public static DataSet Query(string SQLString, int Times) // { // using (SQLiteConnection connection = new SQLiteConnection(connectionString)) // { // DataSet ds = new DataSet(); // try // { // connection.Open(); // SQLiteDataAdapter command = new SQLiteDataAdapter(SQLString, connection); // command.SelectCommand.CommandTimeout = Times; // command.Fill(ds, "ds"); // } // catch (System.Data.SQLite.SQLiteException ex) // { // throw new Exception(ex.Message); // } // return ds; // } // } // #endregion // #region Ö´Ðдø²ÎÊýµÄSQLÓï¾ä // /// // /// Ö´ÐÐSQLÓï¾ä£¬·µ»ØÓ°ÏìµÄ¼Ç¼Êý // /// // /// SQLÓï¾ä // /// Ó°ÏìµÄ¼Ç¼Êý // public static int ExecuteSql(string SQLString, params SQLiteParameter[] cmdParms) // { // using (SQLiteConnection connection = new SQLiteConnection(connectionString)) // { // using (SQLiteCommand cmd = new SQLiteCommand()) // { // try // { // PrepareCommand(cmd, connection, null, SQLString, cmdParms); // int rows = cmd.ExecuteNonQuery(); // cmd.Parameters.Clear(); // return rows; // } // catch (System.Data.SQLite.SQLiteException E) // { // throw new Exception(E.Message); // } // } // } // } // /// // /// Ö´ÐжàÌõSQLÓï¾ä£¬ÊµÏÖÊý¾Ý¿âÊÂÎñ¡£ // /// // /// SQLÓï¾äµÄ¹þÏ£±í£¨keyΪsqlÓï¾ä£¬valueÊǸÃÓï¾äµÄSQLiteParameter[]£© // public static void ExecuteSqlTran(Hashtable SQLStringList) // { // using (SQLiteConnection conn = new SQLiteConnection(connectionString)) // { // conn.Open(); // using (SQLiteTransaction trans = conn.BeginTransaction()) // { // SQLiteCommand cmd = new SQLiteCommand(); // try // { // //Ñ­»· // foreach (DictionaryEntry myDE in SQLStringList) // { // string cmdText = myDE.Key.ToString(); // SQLiteParameter[] cmdParms = (SQLiteParameter[])myDE.Value; // PrepareCommand(cmd, conn, trans, cmdText, cmdParms); // int val = cmd.ExecuteNonQuery(); // cmd.Parameters.Clear(); // } // trans.Commit(); // } // catch (System.Data.SQLite.SQLiteException e) // { // trans.Rollback(); // throw new Exception(e.Message); // } // } // } // } // /// // /// Ö´ÐÐÒ»Ìõ¼ÆËã²éѯ½á¹ûÓï¾ä£¬·µ»Ø²éѯ½á¹û£¨object£©¡£ // /// // /// ¼ÆËã²éѯ½á¹ûÓï¾ä // /// ²éѯ½á¹û£¨object£© // public static object GetSingle(string SQLString, params SQLiteParameter[] cmdParms) // { // using (SQLiteConnection connection = new SQLiteConnection(connectionString)) // { // using (SQLiteCommand cmd = new SQLiteCommand()) // { // try // { // PrepareCommand(cmd, connection, null, SQLString, cmdParms); // object obj = cmd.ExecuteScalar(); // cmd.Parameters.Clear(); // if ((Object.Equals(obj, null)) || (Object.Equals(obj, System.DBNull.Value))) // { // return null; // } // else // { // return obj; // } // } // catch (System.Data.SQLite.SQLiteException e) // { // throw new Exception(e.Message); // } // } // } // } // /// // /// Ö´ÐвéѯÓï¾ä£¬·µ»ØSQLiteDataReader (ʹÓø÷½·¨ÇмÇÒªÊÖ¹¤¹Ø±ÕSQLiteDataReaderºÍÁ¬½Ó) // /// // /// ²éѯÓï¾ä // /// SQLiteDataReader // public static SQLiteDataReader ExecuteReader(string SQLString, params SQLiteParameter[] cmdParms) // { // SQLiteConnection connection = new SQLiteConnection(connectionString); // SQLiteCommand cmd = new SQLiteCommand(); // try // { // PrepareCommand(cmd, connection, null, SQLString, cmdParms); // SQLiteDataReader myReader = cmd.ExecuteReader(); // cmd.Parameters.Clear(); // return myReader; // } // catch (System.Data.SQLite.SQLiteException e) // { // throw new Exception(e.Message); // } // //finally //²»ÄÜÔڴ˹رգ¬·ñÔò£¬·µ»ØµÄ¶ÔÏó½«ÎÞ·¨Ê¹Óà // //{ // // cmd.Dispose(); // // connection.Close(); // //} // } // /// // /// Ö´ÐвéѯÓï¾ä£¬·µ»ØDataSet // /// // /// ²éѯÓï¾ä // /// DataSet // public static DataSet Query(string SQLString, params SQLiteParameter[] cmdParms) // { // using (SQLiteConnection connection = new SQLiteConnection(connectionString)) // { // SQLiteCommand cmd = new SQLiteCommand(); // PrepareCommand(cmd, connection, null, SQLString, cmdParms); // using (SQLiteDataAdapter da = new SQLiteDataAdapter(cmd)) // { // DataSet ds = new DataSet(); // try // { // da.Fill(ds, "ds"); // cmd.Parameters.Clear(); // } // catch (System.Data.SQLite.SQLiteException ex) // { // throw new Exception(ex.Message); // } // return ds; // } // } // } // public static void PrepareCommand(SQLiteCommand cmd, SQLiteConnection conn, // SQLiteTransaction trans, string cmdText, SQLiteParameter[] cmdParms) // { // if (conn.State != ConnectionState.Open) // conn.Open(); // cmd.Connection = conn; // cmd.CommandText = cmdText; // if (trans != null) // cmd.Transaction = trans; // cmd.CommandType = CommandType.Text;//cmdType; // if (cmdParms != null) // { // foreach (SQLiteParameter parameter in cmdParms) // { // if ((parameter.Direction == ParameterDirection.InputOutput // || parameter.Direction == ParameterDirection.Input) && // (parameter.Value == null)) // { // parameter.Value = DBNull.Value; // } // cmd.Parameters.Add(parameter); // } // } // } // #endregion // #region ²ÎÊýת»» // /// // /// ·Å»ØÒ»¸öSQLiteParameter // /// // /// ²ÎÊýÃû×Ö // /// ²ÎÊýÀàÐÍ // /// ²ÎÊý´óС // /// ²ÎÊýÖµ // /// SQLiteParameterµÄÖµ // public static SQLiteParameter MakeSQLiteParameter(string name, // DbType type, int size, object value) // { // SQLiteParameter parm = new SQLiteParameter(name, type, size); // parm.Value = value; // return parm; // } // public static SQLiteParameter MakeSQLiteParameter(string name, DbType type, object value) // { // SQLiteParameter parm = new SQLiteParameter(name, type); // parm.Value = value; // return parm; // } // #endregion // } //}