generated from azures04/Base-REST-API
Introduce DB support and repos: add modules/database.js (connection pool + runDDL) and SQL DDL files (data/ddl/*) for servers, users, providers, identities and credentials. Add repository layers: users, servers, providers, identities, credentials. Update server.js to run DDL at startup. Update .env.example with DB settings and bump dependencies in package.json/package-lock.json (add mariadb, bump dotenv/helmet/path-to-regexp/zod and dev tool upgrades). Error handling and logging included for DDL and repo operations.
11 lines
563 B
SQL
11 lines
563 B
SQL
CREATE TABLE IF NOT EXISTS `identities` (
|
|
`id` UUID PRIMARY KEY DEFAULT UUID(),
|
|
`userId` UUID NOT NULL,
|
|
`providerId` UUID NOT NULL,
|
|
`providerUserId` VARCHAR(255) NOT NULL,
|
|
`createdAt` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
|
CONSTRAINT `fk_identities_userId` FOREIGN KEY (`userId`) REFERENCES `users` (`id`) ON DELETE CASCADE,
|
|
CONSTRAINT `fk_identities_providerId` FOREIGN KEY (`providerId`) REFERENCES `providers` (`id`) ON DELETE CASCADE,
|
|
CONSTRAINT `uq_identities_provider_subject` UNIQUE (`providerId`, `providerUserId`)
|
|
) |