SQLite CRUD Extension

Screenflow - Code Plugins - Jan 26, 2023

Database plugin that make SQLite's prepared statements available to blueprints. It offers auto-creation of tables and statements based on a simple blueprint structure and CRUD-principle (create, read, update and delete).

  • Supported Platforms
  • Supported Engine Versions
    5.1 - 5.3
  • Download Type
    Engine Plugin
    This product contains a code plugin, complete with pre-built binaries and all its source code that integrates with Unreal Engine, which can be installed to an engine version of your choice then enabled on a per-project basis.

Database plugin that make SQLite's prepared statements available to blueprints. It helps you to continuously persist your actors in an easy and systematic way.

Video: Link

With just a basic understanding of SQL you can specify your data objects with a simple structure, that does auto-creation of database tables and prepared statements based, and blueprint code to use the statements. Prepared Objects are offering seven already prepared create read update delete, short CRUD-like, operations:

  • Create - INSERT row with auto-increment integer primary key
  • CreateOrUpdate - INSERT OR REPLACE row with all columns
  • Read - SELECT by primary key
  • Update - UPDATE by primary key
  • Delete - DELETE by primary key
  • Iterate - SELECT all columns row by row.
  • IteratePK - SELECT primary keys row by row

A prepared statement is a database feature used to execute the same SQL statements repeatedly with much higher efficiency than a non-prepared statement. Even most Low-level SQL is hidden, it is still accessible through execution of bare SQL or custom prepared statements. The included example project show you how to store location and rotation of actors of a multi-player game in a database on the server.

Technical Details

Features:

  • Over 60 Blueprint nodes.
  • Auto-generated CRUD and Table operations based on a simple specification (struct), where you just select datatype, primary key and
  • Support for custom prepared statements (including queries).
  • Execution of SQL command strings (no queries).
  • Binding and query support for Unreal primitive types (8) by index or name. Precalculated Index Mapping.
  • Pass-through of target in many nodes for a tidier layout.
  • TimedQueues: class, blueprints and macros to gracefully encounter server I/O overload.
  • Sample Macros for schema version management.
  • Automatic folder creation upon database file creation.
  • Example includes sample code for all CRUD operations and overload handling in chaotic situations (caused in a physical simulation).


Code Module:

  •  SQLiteExt (Runtime)

Number of Blueprints: 3

Number of C++ Classes: 4

Network Replicated: No

Supported Development Platforms: Win64

Supported Target Build Platforms: Win64

Documentation: Link (v5.3.37)

Example Project (without plugin) for 5.3: Link.

Additional Notes:

  • The code plugin uses the database of SQLite Core (shipped with the engine)
  • Made for use in Blueprints only. No support for asynchronous use.
  • Discord-Link