/// <summary> /// 创建数据库执行语句 <see cref="CreateCommand(string, string, SQLiteParameter[])"/> /// </summary> /// <param name="conText">连接信息</param> /// <param name="commandText">执行字段</param> /// <param name="sqlParams">执行条件</param> /// <returns></returns> public static SQLiteCommand CreateCommand(string conText, string commandText, params SQLiteParameter[] sqlParams) { try { SQLiteConnection con = new SQLiteConnection(conText); SQLiteCommand cmd = new SQLiteCommand(commandText, con); if (sqlParams.Length > 0) { foreach (var para in sqlParams) { cmd.Parameters.Add(para); } return(cmd); } else { return(null); } } catch (Exception e) { LogsHelper.WriteExLogInfo(Model.FunctionType.SQLite, e.Message, e); return(null); } }
/// <summary> /// Shortcut method to execute dataset from SQL Statement and object[] arrray of parameter values /// </summary> /// <param name="cn">Connection.</param> /// <param name="commandText">Command text.</param> /// <param name="paramList">Param list.</param> /// <returns></returns> public static DataSet ExecuteDataSet(SQLiteConnection cn, string commandText, object[] paramList) { try { SQLiteCommand cmd = cn.CreateCommand(); cmd.CommandText = commandText; if (paramList != null) { AttachParameters(cmd, commandText, paramList); } DataSet ds = new DataSet(); if (cn.State == ConnectionState.Closed) { cn.Open(); } SQLiteDataAdapter da = new SQLiteDataAdapter(cmd); da.Fill(ds); da.Dispose(); cmd.Dispose(); cn.Close(); return(ds); } catch (Exception e) { LogsHelper.WriteExLogInfo(Model.FunctionType.SQLite, e.Message, e); return(null); } }
/// <summary> /// 得到XML读取器接口 /// </summary> /// <param name="command">数据库命令</param> /// <returns>XmlReader</returns> public static XmlReader ExecuteXmlReader(IDbCommand command) { try { if (command.Connection.State != ConnectionState.Open) { command.Connection.Open(); } // get a data adapter SQLiteDataAdapter da = new SQLiteDataAdapter((SQLiteCommand)command); DataSet ds = new DataSet(); // fill the data set, and return the schema information da.MissingSchemaAction = MissingSchemaAction.AddWithKey; da.Fill(ds); // convert our dataset to XML StringReader stream = new StringReader(ds.GetXml()); command.Connection.Close(); // convert our stream of text to an XmlReader return(new XmlTextReader(stream)); } catch (Exception e) { LogsHelper.WriteExLogInfo(Model.FunctionType.SQLite, e.Message, e); return(null); } }
/// <summary> /// Executes the dataset with Transaction and object array of parameter values. /// </summary> /// <param name="transaction">SQLiteTransaction. Transaction consists of Connection, Transaction, /// and Command, all of which must be created prior to making this method call. </param> /// <param name="commandText">Command text.</param> /// <param name="commandParameters">object[] array of parameter values.</param> /// <returns>DataSet</returns> /// <remarks>user must examine Transaction Object and handle transaction.connection .Close, etc.</remarks> public static DataSet ExecuteDataset(SQLiteTransaction transaction, string commandText, object[] commandParameters) { try { if (transaction == null) { throw new ArgumentNullException("transaction"); } if (transaction != null && transaction.Connection == null) { throw new ArgumentException("The transaction was rolled back or committed, please provide an open transaction.", "transaction"); } IDbCommand cmd = transaction.Connection.CreateCommand(); cmd.CommandText = commandText; AttachParameters((SQLiteCommand)cmd, cmd.CommandText, commandParameters); if (transaction.Connection.State == ConnectionState.Closed) { transaction.Connection.Open(); } DataSet ds = ExecuteDataset((SQLiteCommand)cmd); return(ds); } catch (Exception e) { LogsHelper.WriteExLogInfo(Model.FunctionType.SQLite, e.Message, e); return(null); } }
/// <summary> /// 获取文件信息 <see cref="GetFileInfo(string, out FileInfo)"/> /// </summary> /// <param name="filePath">文件路径</param> /// <param name="fileInfo">输出文件信息</param> /// <returns></returns> public static bool ReadFileInfo(string filePath, out FileInfo fileInfo) { try { if (File.Exists(filePath)) { fileInfo = new FileInfo(filePath); return(true); } fileInfo = null; return(false); } catch (Exception e) { LogsHelper.WriteExLogInfo(FunctionType.IOFile, e.Message, e); fileInfo = null; return(false); } }
/// <summary> /// 分行获取文件内容 <see cref="GetFileLinesData(string, string[])"/> /// </summary> /// <param name="filePath">文件路径</param> /// <param name="linesData">输出内容</param> /// <returns></returns> public static bool ReadFileData(string filePath, out string[] linesData) { try { if (File.Exists(filePath)) { linesData = File.ReadAllLines(filePath); return(true); } linesData = null; return(false); } catch (Exception e) { LogsHelper.WriteExLogInfo(FunctionType.IOFile, e.Message, e); linesData = null; return(false); } }
/// <summary> /// 一次性获取文件全部内容 <see cref="GetFileData(string)"/> /// </summary> /// <param name="filePath">文件路径</param> /// <param name="data"> 输出的数据 </param> /// <returns></returns> public static bool ReadFileData(string filePath, out string data) { try { if (File.Exists(filePath)) { data = File.ReadAllText(filePath); return(true); } data = "路径文件不存在"; return(false); } catch (Exception e) { LogsHelper.WriteExLogInfo(FunctionType.IOFile, e.Message, e); data = null; return(false); } }
/// <summary> /// 写入文件所有行内容 <see cref="WriteFileLinesData(string, string, bool)"/> /// </summary> /// <param name="filePath">文件路径</param> /// <param name="data">文件数据</param> /// <param name="IsOverWrited">是否覆盖原文件</param> /// <returns></returns> public static bool WriteFileData(string filePath, string[] data, bool IsOverWrited = false) { try { //覆盖原文件 if (IsOverWrited) { File.WriteAllLines(filePath, data); } else //若是存在的 则加到后面去 否则创建新文件 { File.AppendAllLines(filePath, data); } return(true); } catch (Exception e) { LogsHelper.WriteExLogInfo(FunctionType.IOFile, e.Message, e); return(false); } }
/// <summary> /// Executes the dataset from a populated Command object. /// </summary> /// <param name="cmd">Fully populated SQLiteCommand</param> /// <returns>DataSet</returns> public static DataSet ExecuteDataset(SQLiteCommand cmd) { try { if (cmd.Connection.State == ConnectionState.Closed) { cmd.Connection.Open(); } DataSet ds = new DataSet(); SQLiteDataAdapter da = new SQLiteDataAdapter(cmd); da.Fill(ds); da.Dispose(); cmd.Connection.Close(); cmd.Dispose(); return(ds); } catch (Exception e) { LogsHelper.WriteExLogInfo(Model.FunctionType.SQLite, e.Message, e); return(null); } }
/// <summary> /// 执行数据库语句 /// </summary> /// <param name="cmd">执行语句组合</param> /// <returns></returns> public static int ExecuteNonQuery(IDbCommand cmd) { try { if (cmd != null) { if (cmd.Connection.State == ConnectionState.Closed) { cmd.Connection.Open(); } int result = cmd.ExecuteNonQuery(); cmd.Connection.Close(); cmd.Dispose(); return(result); } return(-1); } catch (Exception e) { LogsHelper.WriteExLogInfo(Model.FunctionType.SQLite, e.Message, e); return(-1); } }
/// <summary> /// 执行数据库语句 /// </summary> /// <param name="cn">连接类</param> /// <param name="commandText">执行语句</param> /// <param name="paramList">参数列表</param> /// <returns></returns> public static int ExecuteNonQuery(SQLiteConnection cn, string commandText, params object[] paramList) { try { SQLiteCommand cmd = cn.CreateCommand(); cmd.CommandText = commandText; AttachParameters(cmd, commandText, paramList); if (cn.State == ConnectionState.Closed) { cn.Open(); } int result = cmd.ExecuteNonQuery(); cmd.Dispose(); cn.Close(); return(result); } catch (Exception e) { LogsHelper.WriteExLogInfo(Model.FunctionType.SQLite, e.Message, e); return(-1); } }
/// <summary> /// 获取查询结果的第一行第一列信息 /// </summary> /// <param name="connectionString">连接语句</param> /// <param name="commandText">执行语句</param> /// <param name="paramList">参数列表</param> /// <returns></returns> public static object ExecuteScalar(string connectionString, string commandText, params object[] paramList) { try { SQLiteConnection cn = new SQLiteConnection(connectionString); SQLiteCommand cmd = cn.CreateCommand(); cmd.CommandText = commandText; AttachParameters(cmd, commandText, paramList); if (cn.State == ConnectionState.Closed) { cn.Open(); } object result = cmd.ExecuteScalar(); cmd.Dispose(); cn.Close(); return(result); } catch (Exception e) { LogsHelper.WriteExLogInfo(Model.FunctionType.SQLite, e.Message, e); return(null); } }