在创胜系列游戏开发和运维过程中,有时需要向数据库中添加新的子游戏。本教程提供一个通用SQL脚本,可用于补充丢失的游戏数据或新增子游戏,适配多个创胜版本,帮助开发者高效管理数据库。
一、脚本作用与适用范围
该脚本适用于创胜系列游戏,其主要功能包括:
- 添加新子游戏数据,确保游戏能在数据库中正确注册。
- 修复丢失的游戏数据,部分游戏版本可能缺失某些子游戏,可通过本脚本补充。
- 通用兼容,适用于多个版本的创胜游戏数据库。
二、SQL脚本内容解析
DECLARE @GameID int,
@Count INT,
@GameName nvarchar(31),
@DLLName nvarchar(31)
/*
* @GameID:子游戏KINDID(唯一标识)
* @GameName:子游戏名称
* @DLLName:子游戏对应的DLL文件
*
*/
SET @GameID = 21080 -- 设定子游戏ID
SET @GameName = '扣点点' -- 设定子游戏名称
SET @DLLName = 'XinYangMJ.dll' -- 设定子游戏的DLL文件名
-- 检查游戏ID是否已存在
SELECT @Count = COUNT(GameID)
FROM [RYPlatformDB].[dbo].[GameGameItem]
WHERE GameID = @GameID
IF @Count = 0 -- 如果数据库中没有该游戏,则执行插入
BEGIN
INSERT INTO [RYPlatformDB].[dbo].[GameGameItem]
(GameID, GameName, SuportType, DataBaseAddr, DataBaseName, ServerVersion, ClientVersion, ServerDLLName, ClientExeName)
VALUES
(@GameID, @GameName, 3, '127.0.0.1', 'RYTreasureDB', 16777216, 16777216, @DLLName, 'no');
INSERT INTO [RYPlatformDB].[dbo].[GameKindItem]
(KindID, GameID, TypeID, JoinID, SortID, KindName, ProcessName, GameRuleUrl, DownLoadUrl, Recommend, GameFlag, Nullity)
VALUES
(@GameID, @GameID, 1, 10, 0, @GameName, 'no', 1, 1, 1, 3, 0);
END
三、脚本参数说明
1. 需要修改的部分
以下参数需要根据新增的游戏进行调整:
SET @GameID = 21080 -- 游戏ID(唯一值,不能与已有游戏重复)
SET @GameName = '扣点点' -- 子游戏名称
SET @DLLName = 'XinYangMJ.dll' -- DLL组件名称
说明:
@GameID
需要填写唯一的游戏ID,如果重复,系统不会执行新增。@GameName
对应游戏显示的名称,例如**”血战到底”、”斗地主”**等。@DLLName
对应的游戏组件文件,需确保服务器上存在该文件。
四、如何执行SQL脚本
步骤如下:
- 打开SQL Server Management Studio(SSMS)
- 连接到游戏数据库服务器
- 选择数据库(通常为
RYPlatformDB
) - 新建查询(New Query),粘贴以上SQL脚本
- 执行脚本(F5或点击”执行”按钮)
执行完成后,即可在GameGameItem
和GameKindItem
表中看到新增的游戏数据。
五、使用注意事项
- 确保游戏ID唯一,避免与已有游戏冲突,否则可能导致数据错误。
- 游戏名和DLL文件名需准确匹配,否则客户端可能无法正常加载游戏。
- 执行前建议备份数据库,以防数据误操作导致问题。
六、总结与下载地址
该脚本适用于创胜系列数据库,能够高效地添加新游戏数据,同时确保数据库结构完整。如果你的游戏版本中缺失某些子游戏,可以使用本脚本进行补充。
下载地址: