21 lines
907 B
SQL
21 lines
907 B
SQL
-- Ensure document filenames are unique per tenant + folder
|
|
DROP INDEX IF EXISTS documents_tenant_folder_filename_unique;
|
|
DROP INDEX IF EXISTS documents_unique_folder_filename;
|
|
CREATE UNIQUE INDEX documents_tenant_folder_filename_unique
|
|
ON documents (
|
|
tenant_id,
|
|
COALESCE(folder_id, '00000000-0000-0000-0000-000000000000'::uuid),
|
|
filename
|
|
)
|
|
WHERE deleted_at IS NULL;
|
|
|
|
-- Ensure tag labels are unique per tenant
|
|
ALTER TABLE tags DROP CONSTRAINT IF EXISTS tags_label_key;
|
|
DROP INDEX IF EXISTS tags_tenant_label_unique;
|
|
CREATE UNIQUE INDEX tags_tenant_label_unique ON tags (tenant_id, label);
|
|
|
|
-- Ensure correspondent names are unique per tenant
|
|
ALTER TABLE correspondents DROP CONSTRAINT IF EXISTS correspondents_name_unique;
|
|
DROP INDEX IF EXISTS correspondents_tenant_name_unique;
|
|
CREATE UNIQUE INDEX correspondents_tenant_name_unique ON correspondents (tenant_id, name);
|