17 lines
778 B
SQL
17 lines
778 B
SQL
-- Create note_folder table for tracking folders independently of notes
|
|
CREATE TABLE IF NOT EXISTS note_folder (
|
|
id SERIAL PRIMARY KEY,
|
|
name VARCHAR(100) NOT NULL,
|
|
path VARCHAR(500) NOT NULL,
|
|
parent_path VARCHAR(500),
|
|
description TEXT,
|
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
created_by_id INTEGER NOT NULL REFERENCES "user"(id),
|
|
company_id INTEGER NOT NULL REFERENCES company(id),
|
|
CONSTRAINT uq_folder_path_company UNIQUE (path, company_id)
|
|
);
|
|
|
|
-- Create indexes for better performance
|
|
CREATE INDEX IF NOT EXISTS idx_note_folder_company ON note_folder(company_id);
|
|
CREATE INDEX IF NOT EXISTS idx_note_folder_parent_path ON note_folder(parent_path);
|
|
CREATE INDEX IF NOT EXISTS idx_note_folder_created_by ON note_folder(created_by_id); |