scense_demo/scripts/demo_ddl.sql
2026-08-29 21:10:23 +08:00

56 lines
2.6 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# -*- coding: utf-8 -*-
-- demo 模块 DDL部署参考实际建表由宿主 build.sh 用 json2ddl 生成)
CREATE TABLE IF NOT EXISTS demo_session (
id VARCHAR(64) NOT NULL COMMENT '会话ID',
world_id VARCHAR(64) NOT NULL COMMENT '世界ID',
session_name VARCHAR(128) NOT NULL DEFAULT '' COMMENT '演示名称',
status VARCHAR(16) NOT NULL DEFAULT 'preview' COMMENT 'preview/paused/ended',
camera_mode VARCHAR(16) NOT NULL DEFAULT 'orbit' COMMENT 'orbit/topdown/firstperson',
owner_id VARCHAR(32) NOT NULL DEFAULT '0' COMMENT '发起人',
viewer_count INT NOT NULL DEFAULT 0 COMMENT '在线人数',
extra_json TEXT COMMENT '扩展JSON(全屏等)',
created_at DATETIME,
updated_at DATETIME,
PRIMARY KEY (id),
KEY idx_demo_session_world (world_id),
KEY idx_demo_session_status (status)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='演示会话表';
CREATE TABLE IF NOT EXISTS demo_session_state (
id VARCHAR(64) NOT NULL COMMENT '主键',
session_id VARCHAR(64) NOT NULL COMMENT '演示会话ID',
entity_id VARCHAR(64) NOT NULL COMMENT '实体ID',
entity_name VARCHAR(128) NOT NULL DEFAULT '' COMMENT '实体名称',
base_json TEXT COMMENT '演示开始基线(只读)',
demo_json TEXT COMMENT '演示中当前值(可改)',
updated_at DATETIME,
PRIMARY KEY (id),
KEY idx_state_session (session_id),
KEY idx_state_entity (entity_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='演示实体状态覆盖层';
CREATE TABLE IF NOT EXISTS demo_hot_script (
id VARCHAR(64) NOT NULL COMMENT '主键',
session_id VARCHAR(64) NOT NULL COMMENT '演示会话ID',
script_id VARCHAR(64) NOT NULL COMMENT '脚本ID(script_engine联动)',
script_name VARCHAR(128) NOT NULL DEFAULT '' COMMENT '脚本名称',
script_type VARCHAR(16) NOT NULL DEFAULT 'python' COMMENT 'python/expr',
script_content TEXT COMMENT '脚本内容',
updated_at DATETIME,
PRIMARY KEY (id),
KEY idx_hot_session (session_id),
KEY idx_hot_script (script_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='演示热加载脚本';
CREATE TABLE IF NOT EXISTS demo_presence (
id VARCHAR(64) NOT NULL COMMENT '主键',
session_id VARCHAR(64) NOT NULL COMMENT '演示会话ID',
user_id VARCHAR(64) NOT NULL COMMENT '在线用户ID',
user_name VARCHAR(64) NOT NULL DEFAULT '' COMMENT '在线用户名称',
joined_at DATETIME,
last_seen_at DATETIME,
PRIMARY KEY (id),
KEY idx_presence_session (session_id),
KEY idx_presence_user (user_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='演示多人预览在线表';