<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        創建角色隨機名字(mysql抽取隨機記錄)和mysql游標的使用_MySQL

        來源:懂視網 責編:小采 時間:2020-11-09 19:42:45
        文檔

        創建角色隨機名字(mysql抽取隨機記錄)和mysql游標的使用_MySQL

        創建角色隨機名字(mysql抽取隨機記錄)和mysql游標的使用_MySQL:最近在開發中遇到了一些問題,在此記錄一下解決的方法,已作備忘。 1、現在創建游戲角色的時候,基本上都是支持角色名字隨機的,以前此功能在客戶端用代碼實現,然后向服務器請求并驗證,后來發現有時候連續幾次都失敗,所以改成在服務器實現。實現方法主要考
        推薦度:
        導讀創建角色隨機名字(mysql抽取隨機記錄)和mysql游標的使用_MySQL:最近在開發中遇到了一些問題,在此記錄一下解決的方法,已作備忘。 1、現在創建游戲角色的時候,基本上都是支持角色名字隨機的,以前此功能在客戶端用代碼實現,然后向服務器請求并驗證,后來發現有時候連續幾次都失敗,所以改成在服務器實現。實現方法主要考

        最近在開發中遇到了一些問題,在此記錄一下解決的方法,已作備忘。

        1、現在創建游戲角色的時候,基本上都是支持角色名字隨機的,以前此功能在客戶端用代碼實現,然后向服務器請求并驗證,后來發現有時候連續幾次都失敗,所以改成在服務器實現。實現方法主要考慮使用mysql隨機查詢記錄,在網上查了很多方案,然后用在了我們游戲中。

        實現方案是,將所有隨機名字都插入到一張表中,然后從中隨機取一條當前角色表中沒有出現過的名字。

        BEGIN	
        	DECLARE randnum int DEFAULT 0;
        	SELECT FLOOR(RAND() * 309034) INTO randnum;
        	SELECT rname INTO _name FROM `names` WHERE ((_sex = sex) AND
        	(rname not in (SELECT Name FROM longwen.player WHERE _world = WorldID)) AND
        	(id > randnum)) LIMIT 1;
        	
        	set returnvalue = 0;
        END
        2、接運營的需求,有時候因為服務器維護,需要給所有玩家送一些東西,這時候涉及離線玩家,所以我們的方案是靜態寫數據庫。

        因為對mysql沒有深入研究過,在實踐的過程中發現游標操作只能修改一條數據,后來查了很多資料,還是解決了問題,自己也學到了一點知識,修改后存儲過程如下:

        DECLARE _cursor CURSOR FOR 
        SELECT RoleID FROM player WHERE (RoleID NOT IN (SELECT roleID FROM email where LENGTH(datas) <> 0)); 
        DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' set _done = 1;
        
        OPEN _cursor; 
        set _done = 0;
        REPEAT
        	FETCH _cursor into _roleId;
        	replace into email(roleID, datas) values(_roleId, 'test');
        UNTIL _done END REPEAT;
        CLOSE _cursor;
        修改前repeat里面有一條select語句。出現這個問題,主要是對SQLSTATE理解不夠,02000異常有3種條件:

        A:SELECT INTO 語句或 INSERT 語句的子查詢的結果為空表。

        B:在搜索的 UPDATE 或 DELETE 語句內標識的行數為零。

        C:在 FETCH 語句中引用的游標位置處于結果表最后一行之后。

        后來把select語句提出去放到游標聲明語句里面就好了。

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        創建角色隨機名字(mysql抽取隨機記錄)和mysql游標的使用_MySQL

        創建角色隨機名字(mysql抽取隨機記錄)和mysql游標的使用_MySQL:最近在開發中遇到了一些問題,在此記錄一下解決的方法,已作備忘。 1、現在創建游戲角色的時候,基本上都是支持角色名字隨機的,以前此功能在客戶端用代碼實現,然后向服務器請求并驗證,后來發現有時候連續幾次都失敗,所以改成在服務器實現。實現方法主要考
        推薦度:
        標簽: 記錄 名字 角色
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 亚洲一区爱区精品无码| 四虎免费永久在线播放| 亚洲毛片在线观看| 老司机69精品成免费视频| 亚洲色婷婷六月亚洲婷婷6月| 一级毛片免费一级直接观看| 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 免费在线观看一区| 国产亚洲精品激情都市| 国产福利免费视频| 亚洲va久久久噜噜噜久久男同| 免费萌白酱国产一区二区三区 | 亚洲视频在线一区二区| 国产乱妇高清无乱码免费| 亚洲精品无码永久中文字幕| 永久免费不卡在线观看黄网站| 亚洲国产精品热久久| 精品香蕉在线观看免费| 亚洲日韩AV一区二区三区中文 | 人人公开免费超级碰碰碰视频 | 免费观看男人免费桶女人视频 | 亚洲白嫩在线观看| 精品熟女少妇AV免费观看| 国产精品亚洲va在线观看| 亚洲真人无码永久在线| 久久国产乱子伦免费精品| 亚洲黄色激情视频| 免费a级黄色毛片| 国产高清不卡免费视频| 亚洲欧洲日韩国产一区二区三区| 四虎永久精品免费观看| a级毛片视频免费观看| 亚洲国产精品乱码在线观看97 | 好看的电影网站亚洲一区 | 亚洲国产日韩成人综合天堂| 国产精成人品日日拍夜夜免费 | 亚洲成av人片在www鸭子| 亚洲欧洲日产国码av系列天堂| 性短视频在线观看免费不卡流畅| 国产亚洲美女精品久久久久| 亚洲国产精品一区二区久久|