SQL
CREATE TABLE "messages" (
id INTEGER PRIMARY KEY AUTOINCREMENT,
conversation_id INTEGER NOT NULL,
message_id TEXT NOT NULL,
sender TEXT NOT NULL,
message_type TEXT NOT NULL DEFAULT 'text',
content TEXT,
media_url TEXT,
media_mime_type TEXT,
chatbot_id INTEGER NOT NULL,
created_at TEXT NOT NULL,
status TEXT DEFAULT 'sent',
delivered_at TEXT,
read_at TEXT,
sender_user_id TEXT,
metadata TEXT,
UNIQUE(chatbot_id, message_id),
FOREIGN KEY (conversation_id) REFERENCES conversations(id) ON DELETE CASCADE,
FOREIGN KEY (chatbot_id) REFERENCES chatbots(id) ON DELETE CASCADE
)
Columns
| Column | Data type | Allow null | Primary key | Actions |
|---|---|---|---|---|
id |
INTEGER |
✓ | ✓ | Rename | Drop |
conversation_id |
INTEGER |
Rename | Drop | ||
message_id |
TEXT |
Rename | Drop | ||
sender |
TEXT |
Rename | Drop | ||
message_type |
TEXT |
Rename | Drop | ||
content |
TEXT |
✓ | Rename | Drop | |
media_url |
TEXT |
✓ | Rename | Drop | |
media_mime_type |
TEXT |
✓ | Rename | Drop | |
chatbot_id |
INTEGER |
Rename | Drop | ||
created_at |
TEXT |
Rename | Drop | ||
status |
TEXT |
✓ | Rename | Drop | |
delivered_at |
TEXT |
✓ | Rename | Drop | |
read_at |
TEXT |
✓ | Rename | Drop | |
sender_user_id |
TEXT |
✓ | Rename | Drop | |
metadata |
TEXT |
✓ | Rename | Drop |
Foreign Keys
| Column | Destination |
|---|---|
chatbot_id |
chatbots.id |
conversation_id |
conversations.id |
Indexes
| Name | Columns | Unique | SQL | Drop? |
|---|---|---|---|---|
| idx_messages_chatbot_id |
chatbot_id
|
SQL | Drop | |
| idx_messages_conversation_id |
conversation_id
|
SQL | Drop | |
| idx_messages_created_at |
created_at
|
SQL | Drop | |
| sqlite_autoindex_messages_1 |
|
✓ | SQL | Drop |