26 lines
1.3 KiB
SQL
26 lines
1.3 KiB
SQL
-- Cube 数据助手只保存当前查询状态,不保存聊天消息历史。
|
|
CREATE TABLE IF NOT EXISTS ai_cube_report_states (
|
|
dify_conversation_id VARCHAR(128) PRIMARY KEY,
|
|
created_by UUID NOT NULL,
|
|
title VARCHAR(200) NOT NULL DEFAULT '新数据对话',
|
|
tenant_id VARCHAR(64),
|
|
tenant_name VARCHAR(200) NOT NULL DEFAULT '',
|
|
allow_global BOOLEAN NOT NULL DEFAULT FALSE,
|
|
current_cube JSONB NOT NULL,
|
|
limit_source VARCHAR(16) NOT NULL DEFAULT 'system',
|
|
response_message TEXT NOT NULL DEFAULT '',
|
|
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
|
updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
|
CONSTRAINT ck_ai_cube_report_states_limit_source
|
|
CHECK (limit_source IN ('system', 'user')),
|
|
CONSTRAINT ck_ai_cube_report_states_scope
|
|
CHECK (allow_global OR tenant_id IS NOT NULL)
|
|
);
|
|
|
|
CREATE INDEX IF NOT EXISTS idx_ai_cube_report_states_user_updated
|
|
ON ai_cube_report_states (created_by, updated_at DESC);
|
|
|
|
COMMENT ON TABLE ai_cube_report_states IS 'Cube 数据助手当前查询状态;聊天历史由 Dify 保存';
|
|
COMMENT ON COLUMN ai_cube_report_states.current_cube IS '工作流最后一次成功返回的原始 Cube query';
|
|
COMMENT ON COLUMN ai_cube_report_states.limit_source IS 'system=系统预览限制,user=用户明确指定限制';
|