示例#1
0
        /// <summary>
        /// 从数据库中查询
        /// </summary>
        public bool Query(MySQLConnection conn, string userID)
        {
            LogManager.WriteLog(LogTypes.Info, string.Format("从数据库加载用户数据: {0}", userID));

            this.UserID = userID;

            MySQLSelectCommand cmd = new MySQLSelectCommand(conn, new string[] { "rid", "userid", "rname", "sex", "occupation", "level", "zoneid", "changelifecount" }, new string[] { "t_roles" }, new object[, ] {
                { "userid", "=", userID }, { "isdel", "=", 0 }
            }, null, null);

            if (cmd.Table.Rows.Count > 0)
            {
                for (int i = 0; i < cmd.Table.Rows.Count; i++)
                {
                    ListRoleIDs.Add(Convert.ToInt32(cmd.Table.Rows[i]["rid"].ToString()));
                    ListRoleNames.Add(cmd.Table.Rows[i]["rname"].ToString());
                    ListRoleSexes.Add(Convert.ToInt32(cmd.Table.Rows[i]["sex"].ToString()));
                    ListRoleOccups.Add(Convert.ToInt32(cmd.Table.Rows[i]["occupation"].ToString()));
                    ListRoleLevels.Add(Convert.ToInt32(cmd.Table.Rows[i]["level"].ToString()));
                    ListRoleZoneIDs.Add(Convert.ToInt32(cmd.Table.Rows[i]["zoneid"].ToString()));
                    ListRoleChangeLifeCount.Add(Convert.ToInt32(cmd.Table.Rows[i]["changelifecount"].ToString()));
                }
            }

            this.Money = 0; //不充值的情况下,无记录
            cmd        = new MySQLSelectCommand(conn, new string[] { "money", "realmoney", "giftid", "giftjifen" }, new string[] { "t_money" }, new object[, ] {
                { "userid", "=", userID }
            }, null, null);
            if (cmd.Table.Rows.Count > 0)
            {
                this.Money     = Convert.ToInt32(cmd.Table.Rows[0]["money"].ToString());
                this.RealMoney = Convert.ToInt32(cmd.Table.Rows[0]["realmoney"].ToString());
                this.GiftID    = Convert.ToInt32(cmd.Table.Rows[0]["giftid"].ToString());
                this.GiftJiFen = Convert.ToInt32(cmd.Table.Rows[0]["giftjifen"].ToString());
            }

            // 推送信息 [4/23/2014 LiaoWei]
            cmd = new MySQLSelectCommand(conn,
                                         new string[] { "userid", "pushid", "lastlogintime" },
                                         new string[] { "t_pushmessageinfo" }, new object[, ] {
                { "userid", "=", userID }
            }, null, null);

            if (cmd.Table.Rows.Count > 0)
            {
                this.PushMessageID = cmd.Table.Rows[0]["pushid"].ToString();
            }

            return(true);
        }
示例#2
0
        /// <summary>
        /// Gets the names of users in a format. @deprecated use getUsersNC()
        /// </summary>
        /// <param name="format">The user_output_type format for the output</param>
        /// <returns>A 2 dimensional array of strings, unstable!!</returns>
       public string[] getUsers(user_output_type format = user_output_type.FIRST_LAST)
       {
           string[] NAME_FORMAT_FILTER = { "VolunteerID", "CONCAT(FirstName,\" \",LastName)", "CONCAT(LastName,\", \",FirstName)", "CONCAT(FirstName,\" \",LastName),VolunteerID", "CONCAT(LastName,\", \",FirstName),VolunteerID" };
           System.Data.DataTable dt = new MySQLSelectCommand(
           vlcon,
           new string[] { NAME_FORMAT_FILTER[(int)user_output_type.FIRST_LAST] },
           new string[] { "Volunteer" },
           new object[,] { { } },
           null,
           null).Table;

           string[] rval = null;

           for (int i = 1; i <= dt.Rows.Count; i++)
           {
               rval[i] = dt.Rows[i][0].ToString();
           }
           return rval;
       }
示例#3
0
        /// <summary>
        /// Reads host and user columns from mysql database.
        /// </summary>
        public void Program()
        {
            MySQLConnection conn = new MySQLConnection(new MySQLConnectionString("localhost", "mysql", "root", "").AsString);

            MessageBox.Show("Connecting to database");
            try
            {
                conn.Open();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                return;
            }

            // Typical low level reading
            MySQLCommand    cmd    = new MySQLCommand("select host,user from mysql.user", conn);
            MySQLDataReader reader = cmd.ExecuteReaderEx();

            while (reader.Read())
            {
                ListViewItem lvi = new ListViewItem("Low Level - Host:" + reader.GetString(0) + " , User:"******"host", "user" }, new string[] { "user" }, null, null, null).Table;

            foreach (DataRow row in dt.Rows)
            {
                ListViewItem lvi = new ListViewItem("High Level - Host:" + row["host"].ToString() + " , User:"******"user"].ToString());
                lvData.Items.Add(lvi);
            }

            MessageBox.Show("Closing database");
            conn.Close();
            MessageBox.Show("Read finished successfuly!");
        }
示例#4
0
        /// <summary>
        /// 从数据库中加载最近登录过的角色列表做缓存
        /// </summary>
        /// <param name="conn"></param>
        /// <param name="userID"></param>
        public void LoadDBRoleInfos(DBManager dbMgr, MySQLConnection conn)
        {
            MySQLSelectCommand cmd = new MySQLSelectCommand(conn,
                                                            new string[] { "rid", "userid", "rname", "sex", "occupation", "level", "pic", "faction", "money1", "money2", "experience", "pkmode", "pkvalue", "position", "regtime", "lasttime", "bagnum", "othername", "main_quick_keys", "other_quick_keys", "loginnum", "leftfightsecs", "horseid", "petid", "interpower", "totalonlinesecs", "antiaddictionsecs", "logofftime", "biguantime", "yinliang", "total_jingmai_exp", "jingmai_exp_num", "lasthorseid", "skillid", "autolife", "automagic", "numskillid", "maintaskid", "pkpoint", "lianzhan", "killboss", "battlenamestart", "battlenameindex", "cztaskid", "battlenum", "heroindex", "logindayid", "logindaynum", "zoneid", "bhname", "bhverify", "bhzhiwu", "bgdayid1", "bgmoney", "bgdayid2", "bggoods", "banggong", "huanghou", "jiebiaodayid", "jiebiaonum", "username", "lastmailid", "onceawardflag", "banchat", "banlogin" },
                                                            new string[] { "t_roles" }, new object[, ] {
                { "isdel", "=", 0 }
            }, null, null);

            if (cmd.Table.Rows.Count <= 0)
            {
                return;
            }

            for (int i = 0; i < cmd.Table.Rows.Count; i++)
            {
                DBRoleInfo dbRoleInfo = new DBRoleInfo();

                /// 将数据库中获取的数据转换为角色数据
                DBRoleInfo.DBTableRow2RoleInfo(dbRoleInfo, cmd, i);

                //查询已经完成的任务信息
                MySQLSelectCommand cmd1 = new MySQLSelectCommand(conn,
                                                                 new string[] { "pname", "pvalue" },
                                                                 new string[] { "t_roleparams" }, new object[, ] {
                    { "rid", "=", dbRoleInfo.RoleID }
                }, null, null);

                /// 将数据库中获取的数据转换为角色数据_角色参数表
                DBRoleInfo.DBTableRow2RoleInfo_Params(dbRoleInfo, cmd1);

                //查询已经完成的任务信息
                cmd1 = new MySQLSelectCommand(conn,
                                              new string[] { "rid", "taskid", "count" },
                                              new string[] { "t_taskslog" }, new object[, ] {
                    { "rid", "=", dbRoleInfo.RoleID }
                }, null, null);

                /// 将数据库中获取的数据转换为角色数据_旧任务数据
                DBRoleInfo.DBTableRow2RoleInfo_OldTasks(dbRoleInfo, cmd1);

                //查询正在做的任务信息
                cmd1 = new MySQLSelectCommand(conn,
                                              new string[] { "Id", "rid", "taskid", "value1", "value2", "focus", "addtime", "starlevel" },
                                              new string[] { "t_tasks" }, new object[, ] {
                    { "rid", "=", dbRoleInfo.RoleID }, { "isdel", "=", 0 }
                }, null, null);

                /// 将数据库中获取的数据转换为角色数据_正在做任务数据
                DBRoleInfo.DBTableRow2RoleInfo_DoingTasks(dbRoleInfo, cmd1);

                //查询已经获取的物品列表信息
                cmd1 = new MySQLSelectCommand(conn,
                                              new string[] { "id", "goodsid", "isusing", "forge_level", "starttime", "endtime", "site", "quality", "Props", "gcount", "binding", "jewellist", "bagindex", "salemoney1", "saleyuanbao", "saleyinpiao", "addpropindex", "bornindex", "lucky", "strong", "excellenceinfo", "appendproplev", "equipchangelife" },
                                              new string[] { "t_goods" }, new object[, ] {
                    { "rid", "=", dbRoleInfo.RoleID }, { "gcount", ">", 0 }
                }, null, null);
                /// 将数据库中获取的数据转换为角色数据_物品数据
                DBRoleInfo.DBTableRow2RoleInfo_Goods(dbRoleInfo, cmd1);

                //查询已经获取的物品限制列表信息
                cmd1 = new MySQLSelectCommand(conn,
                                              new string[] { "goodsid", "dayid", "usednum" },
                                              new string[] { "t_goodslimit" }, new object[, ] {
                    { "rid", "=", dbRoleInfo.RoleID }
                }, null, null);

                /// 将数据库中获取的数据转换为角色数据_物品数据
                DBRoleInfo.DBTableRow2RoleInfo_GoodsLimit(dbRoleInfo, cmd1);

                //查询已经学习的节能列表信息
                cmd1 = new MySQLSelectCommand(conn,
                                              new string[] { "Id", "otherid", "friendType" },
                                              new string[] { "t_friends" }, new object[, ] {
                    { "myid", "=", dbRoleInfo.RoleID }
                }, null, null);;

                /// 将数据库中获取的数据转换为角色数据_好友数据
                DBRoleInfo.DBTableRow2RoleInfo_Friends(dbRoleInfo, cmd1);

                //查询坐骑的列表信息
                cmd1 = new MySQLSelectCommand(conn,
                                              new string[] { "Id", "horseid", "bodyid", "propsNum", "PropsVal", "addtime", "failednum", "temptime", "tempnum", "faileddayid" },
                                              new string[] { "t_horses" }, new object[, ] {
                    { "rid", "=", dbRoleInfo.RoleID }, { "isdel", "=", 0 }
                }, null, null);

                /// 将数据库中获取的数据转换为角色数据_坐骑数据
                DBRoleInfo.DBTableRow2RoleInfo_Horses(dbRoleInfo, cmd1);

                //查询宠物的列表信息
                cmd1 = new MySQLSelectCommand(conn,
                                              new string[] { "Id", "petid", "petname", "pettype", "feednum", "realivenum", "addtime", "props", "level" },
                                              new string[] { "t_pets" }, new object[, ] {
                    { "rid", "=", dbRoleInfo.RoleID }, { "isdel", "=", 0 }
                }, null, null);

                /// 将数据库中获取的数据转换为角色数据_宠物数据
                DBRoleInfo.DBTableRow2RoleInfo_Pets(dbRoleInfo, cmd1);

                //查询经脉的列表信息
                cmd1 = new MySQLSelectCommand(conn,
                                              new string[] { "Id", "jmid", "jmlevel", "bodylevel" },
                                              new string[] { "t_jingmai" }, new object[, ] {
                    { "rid", "=", dbRoleInfo.RoleID }
                }, null, null);

                /// 将数据库中获取的数据转换为角色数据_经脉数据
                DBRoleInfo.DBTableRow2RoleInfo_JingMais(dbRoleInfo, cmd1);

                //查询经脉的列表信息
                cmd1 = new MySQLSelectCommand(conn,
                                              new string[] { "Id", "skillid", "skilllevel", "usednum" },
                                              new string[] { "t_skills" }, new object[, ] {
                    { "rid", "=", dbRoleInfo.RoleID }
                }, null, null);

                /// 将数据库中获取的数据转换为角色数据_技能数据
                DBRoleInfo.DBTableRow2RoleInfo_Skills(dbRoleInfo, cmd1);

                //查询Buffer的列表信息
                cmd1 = new MySQLSelectCommand(conn,
                                              new string[] { "bufferid", "starttime", "buffersecs", "bufferval", },
                                              new string[] { "t_buffer" }, new object[, ] {
                    { "rid", "=", dbRoleInfo.RoleID }
                }, null, null);

                /// 将数据库中获取的数据转换为角色数据_Buffer数据
                DBRoleInfo.DBTableRow2RoleInfo_Buffers(dbRoleInfo, cmd1);

                //查询跑环任务的列表信息
                cmd1 = new MySQLSelectCommand(conn,
                                              new string[] { "huanid", "rectime", "recnum", "taskClass", "extdayid", "extnum" },
                                              new string[] { "t_dailytasks" }, new object[, ] {
                    { "rid", "=", dbRoleInfo.RoleID }
                }, null, null);

                /// 将数据库中获取的数据转换为角色数据_跑环任务数据
                DBRoleInfo.DBTableRow2RoleInfo_DailyTasks(dbRoleInfo, cmd1);

                //查询每日冲穴次数的信息
                cmd1 = new MySQLSelectCommand(conn,
                                              new string[] { "jmtime", "jmnum" },
                                              new string[] { "t_dailyjingmai" }, new object[, ] {
                    { "rid", "=", dbRoleInfo.RoleID }
                }, null, null);

                /// 将数据库中获取的数据转换为角色数据_跑环任务数据
                DBRoleInfo.DBTableRow2RoleInfo_DailyJingMai(dbRoleInfo, cmd1);

                //查询随身仓库的信息
                cmd1 = new MySQLSelectCommand(conn,
                                              new string[] { "extgridnum" },
                                              new string[] { "t_ptbag" }, new object[, ] {
                    { "rid", "=", dbRoleInfo.RoleID }
                }, null, null);

                /// 将数据库中获取的数据转换为角色数据_随身仓库数据
                DBRoleInfo.DBTableRow2RoleInfo_PortableBag(dbRoleInfo, cmd1);

                //查询角色活动送礼的信息
                cmd1 = new MySQLSelectCommand(conn,
                                              new string[] { "loginweekid", "logindayid", "loginnum", "newstep", "steptime", "lastmtime", "curmid", "curmtime", "songliid", "logingiftstate", "onlinegiftstate", "lastlimittimehuodongid", "lastlimittimedayid", "limittimeloginnum", "limittimegiftstate", "serieslogingetawardstep", "seriesloginawarddayid", "seriesloginawardgoodsid", "everydayonlineawardgoodsid" },
                                              new string[] { "t_huodong" }, new object[, ] {
                    { "rid", "=", dbRoleInfo.RoleID }
                }, null, null);

                /// 将数据库中获取的数据转换为角色数据_送礼活动数据
                DBRoleInfo.DBTableRow2RoleInfo_HuodongData(dbRoleInfo, cmd1);

                //查询角色副本信息 --  修正注释 [11/15/2013 LiaoWei]
                cmd1 = new MySQLSelectCommand(conn,
                                              new string[] { "fubenid", "dayid", "enternum", "quickpasstimer", "finishnum" },
                                              new string[] { "t_fuben" }, new object[, ] {
                    { "rid", "=", dbRoleInfo.RoleID }
                }, null, null);

                //将数据库中获取的数据转换为角色数据_副本数据
                DBRoleInfo.DBTableRow2RoleInfo_FuBenData(dbRoleInfo, cmd1);

                //查询角色日常数据的信息
                cmd1 = new MySQLSelectCommand(conn,
                                              new string[] { "expdayid", "todayexp", "linglidayid", "todaylingli", "killbossdayid", "todaykillboss", "fubendayid", "todayfubennum", "wuxingdayid", "wuxingnum" },
                                              new string[] { "t_dailydata" }, new object[, ] {
                    { "rid", "=", dbRoleInfo.RoleID }
                }, null, null);

                //将数据库中获取的数据转换为角色数据_日常数据
                DBRoleInfo.DBTableRow2RoleInfo_DailyData(dbRoleInfo, cmd1);

                //查询角色押镖数据的信息
                cmd1 = new MySQLSelectCommand(conn,
                                              new string[] { "yabiaoid", "starttime", "state", "lineid", "toubao", "yabiaodayid", "yabiaonum", "takegoods" },
                                              new string[] { "t_yabiao" }, new object[, ] {
                    { "rid", "=", dbRoleInfo.RoleID }
                }, null, null);

                //将数据库中获取的数据转换为角色数据_押镖数据
                DBRoleInfo.DBTableRow2RoleInfo_YaBiaoData(dbRoleInfo, cmd1);

                //vip每日数据
                cmd = new MySQLSelectCommand(conn,
                                             new string[] { "rid", "prioritytype", "dayid", "usedtimes" },
                                             new string[] { "t_vipdailydata" }, new object[, ] {
                    { "rid", "=", dbRoleInfo.RoleID }
                }, null, null);

                //将数据库中获取的数据转换为角色数据_日常数据
                DBRoleInfo.DBTableRow2RoleInfo_VipDailyData(dbRoleInfo, cmd);

                //杨公宝库每日数据
                cmd = new MySQLSelectCommand(conn,
                                             new string[] { "rid", "jifen", "dayid", "awardhistory" },
                                             new string[] { "t_yangguangbkdailydata" }, new object[, ] {
                    { "rid", "=", dbRoleInfo.RoleID }
                }, null, null);

                //将数据库中获取的数据转换为角色数据_日常数据
                DBRoleInfo.DBTableRow2RoleInfo_YangGongBKDailyJiFenData(dbRoleInfo, cmd);

                //查询翅膀的列表信息
                cmd = new MySQLSelectCommand(conn,
                                             new string[] { "Id", "wingid", "forgeLevel", "addtime", "failednum", "equiped", "starexp" },
                                             new string[] { "t_wings" }, new object[, ] {
                    { "rid", "=", dbRoleInfo.RoleID }, { "isdel", "=", 0 }
                }, null, null);

                /// 将数据库中获取的数据转换为角色数据_翅膀数据
                DBRoleInfo.DBTableRow2RoleInfo_Wings(dbRoleInfo, cmd);

                cmd1 = null;

                //更新点将积分数据
                DBQuery.QueryDJPointData(dbMgr, dbRoleInfo);

                AddDBRoleInfo(dbRoleInfo);
            }

            cmd = null;
        }
示例#5
0
        /// <summary>
        /// This sample uses insert, update and delete. Assumes that you have the default database 'test'.
        /// </summary>
        public static void Program()
        {
            MySQLConnection conn = new MySQLConnection(new MySQLConnectionString("localhost", "test", "root", "").AsString);

            MessageBox.Show("Connecting to database");
            conn.Open();
            MySQLCommand cmd;

            cmd = new MySQLDriverCS.MySQLCommand("DROP TABLE IF EXISTS test.mysqldrivercs_test", conn);
            MessageBox.Show(cmd.CommandText);
            cmd.ExecuteNonQuery();
            cmd.Dispose();
            cmd = new MySQLDriverCS.MySQLCommand("CREATE TABLE test.mysqldrivercs_test(" +
                                                 "SettingID tinyint(3) unsigned NOT NULL auto_increment," +
                                                 "SettingValue text, " +
                                                 "PRIMARY KEY  (SettingID), UNIQUE KEY SettingID(SettingID),  KEY SettingID_2 (SettingID))" +
                                                 " TYPE=MyISAM COMMENT='MySQL test table'", conn);
            MessageBox.Show(cmd.CommandText);
            cmd.ExecuteNonQuery();
            cmd.Dispose();

            string Value     = "Value";
            int    SettingID = 1;

            MessageBox.Show("Inserting 1,\"Value\"");
            new MySQLInsertCommand(conn,
                                   new object[, ] {
                { "SettingID", SettingID }, { "SettingValue", Value }
            },
                                   "mysqldrivercs_test"
                                   );

            MessageBox.Show("Updating 1,\"Value2\"");
            Value = "Value2";
            new MySQLUpdateCommand(conn,
                                   new object[, ] {
                { "SettingValue", Value }
            },
                                   "mysqldrivercs_test",
                                   new object[, ] {
                { "SettingID", "=", SettingID }
            },
                                   null
                                   );

            MessageBox.Show("Retrieving 1");
            DataTable dt = new MySQLSelectCommand(conn,
                                                  new string[] { "SettingID", "SettingValue" },
                                                  new string[] { "mysqldrivercs_test" },
                                                  new object[, ] {
                { "SettingID", "=", SettingID }
            },
                                                  null,
                                                  null
                                                  ).Table;
            string storedValue = dt.Rows[0]["SettingValue"].ToString();

            MessageBox.Show("1 -> \"" + storedValue + "\"");

            MessageBox.Show("Deleting 1");
            new MySQLDeleteCommand(conn, "mysqldrivercs_test", new object[, ] {
                { "SettingID", "=", SettingID }
            }, null);

            MessageBox.Show("Closing database");
            conn.Close();
            MessageBox.Show("Program finished successfuly!");
        }
示例#6
0
        public UserMiniData GetUserMiniData(string userId, int roleId, int OnlyZoneId)
        {
            UserMiniData userMimiData = new UserMiniData();

            userMimiData.UserId    = this.UserID;
            userMimiData.RealMoney = this.RealMoney;
            using (MyDbConnection3 conn = new MyDbConnection3(false))
            {
                MySQLConnection dbConn = conn.DbConn;
                string[]        fields = new string[]
                {
                    "rid",
                    "rname",
                    "sex",
                    "occupation",
                    "level",
                    "zoneid",
                    "changelifecount",
                    "regtime",
                    "lasttime",
                    "logofftime"
                };
                string[] tables = new string[]
                {
                    "t_roles"
                };
                object[,] array = new object[3, 3];
                array[0, 0]     = "userid";
                array[0, 1]     = "=";
                array[0, 2]     = userId;
                array[1, 0]     = "isdel";
                array[1, 1]     = "=";
                array[1, 2]     = 0;
                array[2, 0]     = "zoneid";
                array[2, 1]     = "=";
                array[2, 2]     = OnlyZoneId;
                MySQLSelectCommand cmd = new MySQLSelectCommand(dbConn, fields, tables, array, null, null);
                if (cmd.Table.Rows.Count > 0)
                {
                    for (int i = 0; i < cmd.Table.Rows.Count; i++)
                    {
                        int      rid             = Convert.ToInt32(cmd.Table.Rows[i]["rid"].ToString());
                        string   rname           = cmd.Table.Rows[i]["rname"].ToString();
                        int      sex             = Convert.ToInt32(cmd.Table.Rows[i]["sex"].ToString());
                        int      occupation      = Convert.ToInt32(cmd.Table.Rows[i]["occupation"].ToString());
                        int      level           = Convert.ToInt32(cmd.Table.Rows[i]["level"].ToString());
                        int      zoneId          = Convert.ToInt32(cmd.Table.Rows[i]["zoneid"].ToString());
                        int      changeLifeCount = Convert.ToInt32(cmd.Table.Rows[i]["changelifecount"].ToString());
                        DateTime createTime;
                        DateTime.TryParse(cmd.Table.Rows[i]["regtime"].ToString(), out createTime);
                        DateTime lastTime;
                        DateTime.TryParse(cmd.Table.Rows[i]["lasttime"].ToString(), out lastTime);
                        DateTime logoffTime;
                        DateTime.TryParse(cmd.Table.Rows[i]["logofftime"].ToString(), out logoffTime);
                        if (rid == roleId)
                        {
                            userMimiData.RoleCreateTime     = createTime;
                            userMimiData.RoleLastLoginTime  = lastTime;
                            userMimiData.RoleLastLogoutTime = logoffTime;
                        }
                        if (userMimiData.MinCreateRoleTime > createTime)
                        {
                            userMimiData.MinCreateRoleTime = createTime;
                        }
                        if (userMimiData.LastLoginTime < lastTime)
                        {
                            userMimiData.LastLoginTime = lastTime;
                            userMimiData.LastRoleId    = rid;
                        }
                        if (userMimiData.LastLogoutTime < logoffTime)
                        {
                            userMimiData.LastLogoutTime = logoffTime;
                        }
                        if ((userMimiData.MaxChangeLifeCount << 16) + userMimiData.MaxLevel < (changeLifeCount << 16) + level)
                        {
                            userMimiData.MaxChangeLifeCount = changeLifeCount;
                            userMimiData.MaxLevel           = level;
                        }
                    }
                }
            }
            return(userMimiData);
        }
示例#7
0
        public bool Query(MySQLConnection conn, string userID)
        {
            LogManager.WriteLog(LogTypes.Info, string.Format("从数据库加载用户数据: {0}", userID), null, true);
            this.UserID = userID;
            string[] fields = new string[]
            {
                "rid",
                "userid",
                "rname",
                "sex",
                "occupation",
                "level",
                "zoneid",
                "changelifecount",
                "predeltime"
            };
            string[] tables = new string[]
            {
                "t_roles"
            };
            object[,] array = new object[2, 3];
            array[0, 0]     = "userid";
            array[0, 1]     = "=";
            array[0, 2]     = userID;
            array[1, 0]     = "isdel";
            array[1, 1]     = "=";
            array[1, 2]     = 0;
            MySQLSelectCommand cmd = new MySQLSelectCommand(conn, fields, tables, array, null, null);

            if (cmd.Table.Rows.Count > 0)
            {
                for (int i = 0; i < cmd.Table.Rows.Count; i++)
                {
                    this.ListRoleIDs.Add(Convert.ToInt32(cmd.Table.Rows[i]["rid"].ToString()));
                    this.ListRoleNames.Add(cmd.Table.Rows[i]["rname"].ToString());
                    this.ListRoleSexes.Add(Convert.ToInt32(cmd.Table.Rows[i]["sex"].ToString()));
                    this.ListRoleOccups.Add(Convert.ToInt32(cmd.Table.Rows[i]["occupation"].ToString()));
                    this.ListRoleLevels.Add(Convert.ToInt32(cmd.Table.Rows[i]["level"].ToString()));
                    this.ListRoleZoneIDs.Add(Convert.ToInt32(cmd.Table.Rows[i]["zoneid"].ToString()));
                    this.ListRoleChangeLifeCount.Add(Convert.ToInt32(cmd.Table.Rows[i]["changelifecount"].ToString()));
                    this.ListRolePreRemoveTime.Add(cmd.Table.Rows[i]["predeltime"].ToString());
                }
            }
            this.Money = 0;
            string[] fields2 = new string[]
            {
                "money",
                "realmoney",
                "giftid",
                "giftjifen",
                "points",
                "specjifen",
                "everyjifen",
                "cc"
            };
            string[] tables2 = new string[]
            {
                "t_money"
            };
            array       = new object[1, 3];
            array[0, 0] = "userid";
            array[0, 1] = "=";
            array[0, 2] = userID;
            cmd         = new MySQLSelectCommand(conn, fields2, tables2, array, null, null);
            if (cmd.Table.Rows.Count > 0)
            {
                this.Money       = Convert.ToInt32(cmd.Table.Rows[0]["money"].ToString());
                this.RealMoney   = Convert.ToInt32(cmd.Table.Rows[0]["realmoney"].ToString());
                this.GiftID      = Convert.ToInt32(cmd.Table.Rows[0]["giftid"].ToString());
                this.GiftJiFen   = Convert.ToInt32(cmd.Table.Rows[0]["giftjifen"].ToString());
                this.InputPoints = Convert.ToInt32(cmd.Table.Rows[0]["points"].ToString());
                this.SpecJiFen   = Convert.ToInt32(cmd.Table.Rows[0]["specjifen"].ToString());
                this.EveryJiFen  = Convert.ToInt32(cmd.Table.Rows[0]["everyjifen"].ToString());
                string cc = cmd.Table.Rows[0]["cc"].ToString();
                if (!Global.CCC(cc, 3, new object[]
                {
                    userID,
                    this.Money,
                    this.RealMoney
                }))
                {
                    LogManager.WriteLog(LogTypes.DataCheck, string.Format("DataCheckFaild#t_money#userid={0},money={1},cc={2}", userID, this.Money, cc), null, true);
                    return(false);
                }
            }
            string[] fields3 = new string[]
            {
                "userid",
                "pushid",
                "lastlogintime"
            };
            string[] tables3 = new string[]
            {
                "t_pushmessageinfo"
            };
            array       = new object[1, 3];
            array[0, 0] = "userid";
            array[0, 1] = "=";
            array[0, 2] = userID;
            cmd         = new MySQLSelectCommand(conn, fields3, tables3, array, null, null);
            if (cmd.Table.Rows.Count > 0)
            {
                this.PushMessageID = cmd.Table.Rows[0]["pushid"].ToString();
            }
            string[] fields4 = new string[]
            {
                "userid",
                "secpwd"
            };
            string[] tables4 = new string[]
            {
                "t_secondpassword"
            };
            array       = new object[1, 3];
            array[0, 0] = "userid";
            array[0, 1] = "=";
            array[0, 2] = userID;
            cmd         = new MySQLSelectCommand(conn, fields4, tables4, array, null, null);
            if (cmd.Table.Rows.Count > 0)
            {
                this.SecPwd = cmd.Table.Rows[0]["secpwd"].ToString();
            }
            else
            {
                this.SecPwd = "";
            }
            return(true);
        }