prefix . self::TABLE_NAME; } /** * Get CREATE TABLE SQL. * * @param string $prefix Table prefix. * @param string $charset_collate Charset collation. * @return string */ public static function getCreateTableSql( string $prefix, string $charset_collate ): string { $table = $prefix . self::TABLE_NAME; return "CREATE TABLE {$table} ( id bigint(20) unsigned NOT NULL AUTO_INCREMENT, event_name varchar(100) NOT NULL, payload_json longtext NOT NULL, status varchar(20) NOT NULL DEFAULT 'pending', created_at datetime NOT NULL, processed_at datetime DEFAULT NULL, PRIMARY KEY (id), KEY status_created (status, created_at) ) {$charset_collate};"; } }