默认SQLite插件读取数据时返回FDataBaseRecordSet数据,会发现此类通过迭代获取数据库记录,且无法在蓝图中使用。
因为不想每次读取数据库都写C++,很不便且无意义的重复代码也很多。所以考虑读取数据并将数据存储在Json字符串中,这样无论任何类或蓝图需要数据都可以直接读取Json字符串并自行解析。
因为4.27版本还没有官方的Json插件支持,所以这边直接选用了免费又好用的VaRest插件来便捷的在蓝图中解析Json字符串。
需要打开SQLite,SQLiteSupport插件用于连接SQLite数据库。
VaRest插件用于解析Json字符串(可替换,其他能解析Json的也可以,当然自己写也行)
别忘记在Build.cs中添加这几个模块和Json模块
创建Actor管理数据库连接状态等,可以用GameInstance生成并保存该对象。
读取数据库数据:
结果如下
数据库截图
写入数据库:
这样就可以直接执行SQL语句,具体解析也不需要都在C++中单独写了