虚幻引擎4中的SQLite

3

我该如何在虚幻引擎4中与自己的SQLite数据库进行交互?是否可以通过蓝图C++完成,还是必须纯粹使用C++?


试试这个:https://forums.unrealengine.com/showthread.php?49542-SQLite-3-Implementation-Into-Unreal-Engine-4 不要忘记阅读整个帖子。 - KriszDev
有时候,找到特定主题相关的UE文档/教程是很令人沮丧的。如果翻译符合您的要求,请将其作为答案提交以供选择。我完成后会进行评论。 - Phil D.
1
Unreal Engine 4.6的发布说明表明,自从我发表问题以来,已经添加了SQLiteSupport模块。https://forums.unrealengine.com/showthread.php?53230-Unreal-Engine-4-6-Released - Phil D.
2个回答

2
从虚幻引擎访问SQLite可以通过蓝图完成(本人未尝试),但可以查看TappyChicken蓝图示例,SaveGame类可以通过任何想要的事件存储/加载多个变量。此外,在YouTube上还有一个很好的视频:http://www.youtube.com/watch?v=v0WRumU-gOk
关于代码,我使用https://github.com/afuzzyllama/DataAccess。试试看吧,它可以将UObjects保存到本地sqlite数据库中。
例如:

TSharedPtr<SqliteDataResource> DataResource = MakeShareable(new SqliteDataResource(FString(FPaths::GameDir() + "/Data/Test.db")));
DataResource->Acquire();
TSharedPtr<IDataHandler> DataHandler = MakeShareable(new SqliteDataHandler(DataResource));

UTestObject* TestObj = NewObject<UTestObject>();

// Create a record
DataHandler->Create(TestObj);

// Read a record
DatHandler->Read(/**record id*/ 1, TestObj);

// Update a record
TestObj->SomeProperty = "some value";
DataHandler->Update(TestObj);

// Delete a record
DataHandler->Delete(TestObj);

// This shouldn't be necessary since this should be run when the TSharedPtr runs out of references
DataResource->Release();


-1

这对于SQLite来说完全没有用,因为SQLite是一种“无服务器”本地数据库... - Mike Johnson

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接