UE虚幻资源 [工具/功能] 专用游戏服务器执行数据库查询的插件Blueprint SQL ORACLE MySQL ODBC Database Communicator 425
发布于
2024-6-18
170
0
引擎插件类型
软件版本要求: 未知或无明确软件版本限制
引擎插件类型:  

您需要 登录 才可以下载或查看,没有账号?注册

x
价格:50元素币(或5余额) 百度网盘 销售总额:0元素币 购买人数:0

尊敬的游客 ,本内容需要支付 50元素币十分之一的[余额] 来购买.
您可以[充值][发帖] [悬赏] [任务]来赚取积分。


原文链接_https://www.unrealengine.com/marketplace/en-US/product/sql-database-communicator
可以为专用游戏服务器执行数据库查询的插件
现在适用于 Linux! _需要免费的 ODBC 驱动程序 _适用于所有常见的数据库,如 SQL_MySql_Oracle 等......_您只需要选择正确的 ODBC 驱动程序_
此插件可以使用 ODBC 在蓝图中执行数据库查询。ODBC 是一种免费_老式_稳定_可靠且跨平台的数据库通信方式。大多数常见的数据库框架都可以使用 ODBC。SQL_MySql_Oracle_Azure_Amazon 等......都可以用这个插件查询。蓝图的使用与广泛使用的 VaRest 插件非常相似。它利用UE4的FNonAbandonableTask异步执行查询,而不会阻塞游戏线程。
永远不要把数据库连接字符串放在你要给陌生人的东西里。我把我的放在一个只有在我的 Linux 游戏服务器上才能找到的配置文件中。此插件仅用于专用服务器端逻辑或本地数据库逻辑。
教程视频 https://www.youtube.com/watch?v=RRvzRxxUhcg
技术细节
特征
_在蓝图中执行 SQL 语句
_查询在UE4的异步线程池中异步运行
_根据查询结果大小,可以同时执行数百个查询,而不会在游戏线程上出现任何明显的延迟
代码模块
_核心
_CoreUObject
_发动机
如何在蓝图中创建和执行查询_请参阅蓝图屏幕截图_
1.构造查询 UObject
2.将构造的查询 UObject 提升为变量
3.绑定 OnQueryFinished 事件
4.添加 DatabaseRowModel 结构变量。DatabaseRowModel 应包含 DatabaseColumnModels 数组,该数组包含列名和变量类型定义。只有字符串列才需要 StringBufferSize
5.对 DatabaseQuery 对象调用 ExecuteQueryAsync
6.应返回 DatabaseQueryResult,并填充结果
7.可以在结果列上 GetValueAsString 或将其强制转换为其变量类型列,以避免将其转换为字符串
幕后花絮_
1.ExecuteQueryAsync 被调用
2.在游戏线程上创建 DatabaseQueryResult UObject
3.FNonAbandonableTask 已创建并开始异步运行
4.在异步线程内部,将创建与 SQL 数据库的连接
5.QueryResultRowStructs 是为每个结果行创建的,并由 ODBC SQLFetch__ 填充
6.FNonAbandonableTask 将填充的 QueryResultStruct 返回到游戏线程并销毁
7.游戏线程将 QueryResultStruct 转换为在步骤 2 中创建的 UDatabaseQueryResult
8.蓝图友好的 OnQueryFinished 使用填充的 UDatabaseQueryResult 进行广播
标签
A_05.jpg
A_06.jpg
参与人数 3 元素币 +12 活跃度 +9
还没有设置签名!您可以在此展示你的链接,或者个人主页!

使用道具 举报 登录

回复 <

快来发表你宝贵的意见吧!

座右铭323 实名

通过了实名认证的内容创造者

  

主题
6
精华
5
超神
0
扩散
0
微金
0
智慧
0
余额
0
在线时间
17 小时

长剑 长枪

快速回复 返回顶部 返回列表