💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
[TOC] ## **数据库异常** ### **未找到字段** ``` [警告 - Player Data] 未找到储存引擎内的 skillapi 字段 [警告 - Player Data] 未找到储存引擎内的 data 字段 [警告 - Player Data] 未找到储存引擎内的 equip 字段 [警告 - Player Data] 未找到储存引擎内的 buff 字段 ``` 这种问题先查看数据库是否正常创建了表`px_pxrpg_data`和字段 <br/> ![](images/7168870b-135a-4f6a-8639-24d153465771.png) ![](images/a01196cb-d681-41c3-b4b2-78a9ab36a0a7.png) <br/> 如果字段不全,自己进一次游戏,会生成对应字段 进入之后退出游戏,会报类似以下的异常(后续版本会修复,原因是创建字段时,未及时缓存) ``` Exception in thread "Thread-xx" java.lang.IllegalStateException: Field does not exist : skillapi Exception in thread "Thread-xx" java.lang.IllegalStateException: Field does not exist : data Exception in thread "Thread-xx" java.lang.IllegalStateException: Field does not exist : buff Exception in thread "Thread-xx" java.lang.IllegalStateException: Field does not exist : equip ``` <br/> 这个时候报错可以不管,重启服务器就正常了 ***** ### **玩家数据未清除** 如果进游戏后退游戏再进游戏/或者多次出现以下情况 ``` [PxRpg] [警告 - Player Data] ====================================================================== [PxRpg] [警告 - Player Data] 玩家 [dapixiong] 在线状态未清除,将强制解除在线状态,出现此条警告的情况可能如下: [PxRpg] [警告 - Player Data] 1. 没有正常关闭服务端导致玩家数据没有及时保存并清理在线数据,并且玩家数据可能会丢失部分 [PxRpg] [警告 - Player Data] 2. 玩家已经在同储存引擎的服务端登录,并且成功读取了数据 [PxRpg] [警告 - Player Data] 如需避免该情况正常关闭服务端即可 [PxRpg] [警告 - Player Data] 如提示该警告后玩家仍被踢出,那么请将玩家的数据删除或者手动修复一下即可 [PxRpg] [警告 - Player Data] 如有报错请先解决报错 [PxRpg] [警告 - Player Data] ====================================================================== ``` 检查`px`数据库编码是否是`utf8`,如下图 ![](images/e6f1dc30-4848-4e70-a5df-83dd375814db.png) 再检查`px_pxrpg_data`表编码是否是`utf8`,如下图 ![](images/251e8057-47b5-49a9-aa61-698d862a20cc.png) 如果是的话,检查表中玩家数据的中文是否出现了`???`这种字符 正常: ![](images/077fec77-0d57-430f-bfc5-a53c5ff4153b.png) **异常**: ![](images/a580704f-89bf-4ffe-a4e0-91c61948d92f.png) 如果是异常的 在`Storage\config.yml`文件配置里面额外参数添加 ``` config: mysql: # 在此处添加 characterEncoding=UTF-8 # 如果你已经写了一个参数例如: useSSL=false # 那么你可能需要这样写,把 useSSL=false 放在后面,并且中间要加入 # 因为配置问题,我把 `&` 解析成了 `§` 颜色代码QAQ(会修复) params: 'characterEncoding=UTF-8&useSSL=false' ``` 然后删除出现问题的数据重启之后就解决了(**注意不是删表**)