| Table: Department | |||
| Department is a grouping that Staff can be assigned to. | |||
| Columns | |||
| Name | Type | Constraints | Description |
| department_KEY | int | NOT NULL | AUTO-INCREMENT: Database assigned primary key for this table. |
| update__staff_KEY | int | NOT NULL | |
| update_date_utc | datetime | NOT NULL | |
| department_id | nvarchar (11) | NOT NULL | User defined identifier (unique). |
| description | nvarchar (250) | NOT NULL | User defined description. |
| create_date_utc | datetime | NOT NULL | |
| department_id_sortable | varchar (48) | NOT NULL | A representation of the department_id column that sorts in natural order, meaning that digits are sorted as numbers while non-digits are sorted alphabetically. A trigger keeps this field synchronized with the content of department_id. |
| Primary key | |||
| Name | Columns | Description | |
| PK_Department$department_KEY | department_KEY | CLUSTERED | |
| Unique constraints | |||
| Name | Columns | Description | |
| UK_Department$department_id | department_id | Each id must be unique. | |
| UK_Department$department_id_sortable | department_id_sortable | An index by the sortable ID is desired, and the algorithm ends up producing unique values. | |
| Incoming foreign keys | |||
| Name | Columns | Referencing table | Description |
| FK_Staff__Department__department_KEY | department_KEY | Staff | |
| FK_Project_Template__Department__department_KEY | department_KEY | Project_Template | |
| FK_Project__Department__department_KEY | department_KEY | Project | |