/// <summary> /// 返回受影响行数 /// </summary> /// <param name="sql"></param> /// <param name="parameters"></param> /// <returns></returns> public int ExecuteStoreCommand(string sql, out int lastInsertId, params MySqlParameter[] parameters) { lastInsertId = 0; int iRet = 0; try { MySqlCommand cmd = new MySqlCommand(); PrepareCommand(cmd, _mySqlConnection, null, CommandType.Text, sql, parameters); iRet = cmd.ExecuteNonQuery(); cmd = new MySqlCommand(); string sqlStr = "SELECT LAST_INSERT_ID();"; PrepareCommand(cmd, _mySqlConnection, null, CommandType.Text, sqlStr, parameters); lastInsertId = SIConvert.ToInt32(cmd.ExecuteScalar(), 0); return(iRet); } catch (Exception exp) { throw exp; } finally { if (_mySqlConnection.State == ConnectionState.Open) { _mySqlConnection.Close(); } } }
/// <summary> /// 替换SQL语句参数 /// </summary> /// <param name="para"></param> /// <returns></returns> public string ReplaceSqlPara(object para) { if (para == null) { return("null"); } if (para.GetType().IsPrimitive) { return(para.ToString()); } else if (para.GetType() == typeof(DateTime)) { return("'" + SIConvert.ToDateTime(para.ToString()).ToString("yyyy-MM-dd HH:mm:ss") + "'"); } else { return("'" + para.ToString().Replace("\\", "\\\\").Replace("'", "\\'") + "'"); } }