CREATE TABLE documents
(
document_id INT NOT NULL PRIMARY,
document_name VARCHAR(25) NOT NULL,
document_added DATETIME NOT NULL DEFAULT = CURRENT_TIMESTAMP
)
CREATE TABLE documents_client_sent
(
document_sent_id INT NOT NULL PRIMARY KEY,
document_id INT NOT NULL REFERENCES documents (document_id),
client_id INT NOT NULL REFERENCES clients (client_id)
)
CREATE TABLE documents_provider_sent
(
document_sent_id INT NOT NULL PRIMARY KEY,
document_id INT NOT NULL REFERENCES documents (document_id),
provider_id INT NOT NULL REFERENCES providers (provider_id)
)
To get all documents sent (put this in a view):
SELECT a.document_id, a.document_sent_id, a.client_id, 'client' AS sent_type FROM [documents_client_sent] AS a
UNION ALL
SELECT b.document_id, b.document_sent_id, b.provider_id, 'provider' as sent_type FROM [documents_provider_sent] AS b