SQL

CREATE TABLE knowledge_base_documents  (
  id INTEGER PRIMARY KEY AUTOINCREMENT,
  chatbot_id INTEGER,
  voice_agent_config_id INTEGER,
  collection_type TEXT NOT NULL,
  document_id TEXT NOT NULL,
  filename TEXT,
  source_type TEXT,
  file_path TEXT,
  created_at TEXT NOT NULL,
  FOREIGN KEY (chatbot_id) REFERENCES chatbots(id) ON DELETE CASCADE,
  FOREIGN KEY (voice_agent_config_id) REFERENCES voice_agent_configs(id) ON DELETE CASCADE,
  CHECK ((chatbot_id IS NOT NULL) OR (voice_agent_config_id IS NOT NULL))
)

+ Add column

Columns

Column Data type Allow null Primary key Actions
id INTEGER Rename | Drop
chatbot_id INTEGER Rename | Drop
voice_agent_config_id INTEGER Rename | Drop
collection_type TEXT Rename | Drop
document_id TEXT Rename | Drop
filename TEXT Rename | Drop
source_type TEXT Rename | Drop
file_path TEXT Rename | Drop
created_at TEXT Rename | Drop

Foreign Keys

Column Destination
voice_agent_config_id voice_agent_configs.id
chatbot_id chatbots.id

+ Add index

Indexes

Name Columns Unique SQL Drop?
idx_kb_documents_chatbot_id chatbot_id SQL
CREATE INDEX idx_kb_documents_chatbot_id
ON knowledge_base_documents(chatbot_id)
Drop
idx_kb_documents_collection_type collection_type SQL
CREATE INDEX idx_kb_documents_collection_type
ON knowledge_base_documents(collection_type)
Drop
idx_kb_documents_voice_agent_config_id voice_agent_config_id SQL
CREATE INDEX idx_kb_documents_voice_agent_config_id
ON knowledge_base_documents(voice_agent_config_id)
Drop