private static GeneralRecordData LoadSingleTableUserInfo(List<string> primaryKeys) { GeneralRecordData ret = null; try { using (MySqlCommand cmd = new MySqlCommand()) { cmd.Connection = DBConn.MySqlConn; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "LoadSingleTableUserInfo"; if(primaryKeys.Count != 1) throw new Exception("primary key number don't match !!!"); MySqlParameter inputParam; inputParam = new MySqlParameter("@_Guid", MySqlDbType.UInt64); inputParam.Direction = ParameterDirection.Input; inputParam.Value = (ulong)Convert.ChangeType(primaryKeys[0],typeof(ulong)); cmd.Parameters.Add(inputParam); using (DbDataReader reader = cmd.ExecuteReader()) { if (reader.Read()) { ret = new GeneralRecordData(); object val; TableUserInfo msg = new TableUserInfo(); val = reader["Guid"]; msg.Guid = (ulong)val; ret.PrimaryKeys.Add(val.ToString()); val = reader["AccountId"]; msg.AccountId = (string)val; ret.ForeignKeys.Add(val.ToString()); val = reader["Nickname"]; msg.Nickname = (string)val; val = reader["HeroId"]; msg.HeroId = (int)val; val = reader["CreateTime"]; msg.CreateTime = (string)val; val = reader["LastLogoutTime"]; msg.LastLogoutTime = (string)val; val = reader["Level"]; msg.Level = (int)val; val = reader["ExpPoints"]; msg.ExpPoints = (int)val; val = reader["SceneId"]; msg.SceneId = (int)val; val = reader["PositionX"]; msg.PositionX = (float)val; val = reader["PositionZ"]; msg.PositionZ = (float)val; val = reader["FaceDir"]; msg.FaceDir = (float)val; val = reader["Money"]; msg.Money = (int)val; val = reader["Gold"]; msg.Gold = (int)val; val = reader["SummonerSkillId"]; msg.SummonerSkillId = (int)val; val = reader["IntDatas"]; msg.IntDatas = (string)val; val = reader["FloatDatas"]; msg.FloatDatas = (string)val; val = reader["StringDatas"]; msg.StringDatas = (string)val; ret.DataVersion = (int)reader["DataVersion"]; ret.Data = DbDataSerializer.Encode(msg); } } } } catch (Exception ex) { DBConn.Close(); throw ex; } return ret; }
private static List<GeneralRecordData> LoadAllTableUserInfo(int start, int count) { List<GeneralRecordData> ret = new List<GeneralRecordData>(); try { using (MySqlCommand cmd = new MySqlCommand()) { cmd.Connection = DBConn.MySqlConn; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "LoadAllTableUserInfo"; MySqlParameter inputParam; inputParam = new MySqlParameter("@_Start", MySqlDbType.Int32); inputParam.Direction = ParameterDirection.Input; inputParam.Value = start; cmd.Parameters.Add(inputParam); inputParam = new MySqlParameter("@_Count", MySqlDbType.Int32); inputParam.Direction = ParameterDirection.Input; inputParam.Value = count; cmd.Parameters.Add(inputParam); using (DbDataReader reader = cmd.ExecuteReader()) { while (reader.Read()) { GeneralRecordData record = new GeneralRecordData(); object val; TableUserInfo msg = new TableUserInfo(); val = reader["Guid"]; msg.Guid = (ulong)val; record.PrimaryKeys.Add(val.ToString()); val = reader["AccountId"]; msg.AccountId = (string)val; record.ForeignKeys.Add(val.ToString()); val = reader["Nickname"]; msg.Nickname = (string)val; val = reader["HeroId"]; msg.HeroId = (int)val; val = reader["CreateTime"]; msg.CreateTime = (string)val; val = reader["LastLogoutTime"]; msg.LastLogoutTime = (string)val; val = reader["Level"]; msg.Level = (int)val; val = reader["ExpPoints"]; msg.ExpPoints = (int)val; val = reader["SceneId"]; msg.SceneId = (int)val; val = reader["PositionX"]; msg.PositionX = (float)val; val = reader["PositionZ"]; msg.PositionZ = (float)val; val = reader["FaceDir"]; msg.FaceDir = (float)val; val = reader["Money"]; msg.Money = (int)val; val = reader["Gold"]; msg.Gold = (int)val; val = reader["SummonerSkillId"]; msg.SummonerSkillId = (int)val; val = reader["IntDatas"]; msg.IntDatas = (string)val; val = reader["FloatDatas"]; msg.FloatDatas = (string)val; val = reader["StringDatas"]; msg.StringDatas = (string)val; record.DataVersion = (int)reader["DataVersion"]; record.Data = DbDataSerializer.Encode(msg); ret.Add(record); } } } } catch (Exception ex) { DBConn.Close(); throw ex; } return ret; }