Files
nwiki-doc/doc/DATABASE.md
2026-01-09 12:02:41 -06:00

785 B

Database Design

erDiagram
	Authors }o--|| Articles : Author
	Tagging }o--|| Tags : Tag
	Tagging }o--|| Articles : Article
	Articles ||--|| Posts : Last_Post
	Articles ||--o{ Posts : Main_Article

	Articles {
		INTEGER rowid PK "Article, Main_Article"
		TEXT(128) title
		TEXT(512) description
		TIMESTAMP timestamp
		BOOLEAN public
		INTEGER author_id FK "Author"
		INTEGER lastpost_id FK "Last_Post"
	}

	Authors {
		INTEGER rowid PK "Author"
		TEXT(32) sub
		TEXT(32) iss
		TEXT(64) username
	}

	Tags {
		INTEGER rowid PK "Tag"
		TEXT(32) title
	}

	Tagging {
		INTEGER rowid PK
		INTEGER tag_id FK "Tag"
		INTEGER article_id FK "Article"
	}

	Posts {
		INTEGER rowid PK "Last_Post"
		INTEGER article_id FK "Main_Article"
		TIMESTAMP timestamp
		TEXT(5000) body
	}