如果你在搭建登录服务或中心服务时,启动后后台一直刷红字提示:
数据库异常:在对应所需名称或序数的合集中,未找到项目
后面跟着:
找不到存储过程 GSP_GP_LoadGamePageItem
或者提示 GlobalPlayPresent
表丢失,这基本可以判断就是你的 平台数据库(QPPlatformDB)缺少表或存储过程。
后台红字错误提示截图
为什么会这样?
平台库里有一些核心表和配套的存储过程是挂钩的,比如 GlobalPlayPresent
表是负责记录全局在线信息或者某些推荐数据的。
如果某些脚本执行时漏了这一张表或者执行中断没建完,就会导致服务组件启动时报错找不到该集合。
正确的做法
1. 先检查表
打开 SQL Server Management Studio → 找到 QPPlatformDB → 展开“表”,看里面有没有 GlobalPlayPresent
。
如果没有,那就是漏建了,找到你安装包里自带的 平台库.sql
或者单独的 GlobalPlayPresent.sql
,右键执行。
2. 再检查存储过程
有些人只建了表但存储过程没跑全,结果下一步又弹:
找不到存储过程 GSP_GP_LoadGamePageItem
存储过程缺失报错
这时候要在存储过程里找到 加载页面.sql
(不同版本也可能叫 LoadGamePageItem.sql
),在 SQL Server 里执行一遍,注意要切到 QPPlatformDB 库下执行。
加载页面.sql 脚本示例
小细节:
有的安装包里有两个类似文件,一个是 GSP_GP_LoadGamePageItem
,另一个可能是 GSP_GP_LoadGameNodeItem
,名字很像别点错。
不放心可以直接用记事本打开 .sql
脚本,把里头的存储过程名字确认一下再执行,防止弄混。
这个错误一看就知道是缺表缺过程,最稳妥就是:
-
先建表 → 再建过程 → 再重启中心服务和登录服务,别只重启一个。
-
有时候数据库改动后没重启服务是读不到的,这步也很关键。