github.com/icyphox/x@v0.0.355-0.20220311094250-029bd783e8b8/popx/stub/migrations/legacy/20191100000001_identities.postgres.up.sql (about) 1 CREATE TABLE "identities" ( 2 "id" UUID NOT NULL, 3 PRIMARY KEY("id"), 4 "traits_schema_id" VARCHAR (2048) NOT NULL, 5 "traits" jsonb NOT NULL, 6 "created_at" timestamp NOT NULL, 7 "updated_at" timestamp NOT NULL 8 ); 9 CREATE TABLE "identity_credential_types" ( 10 "id" UUID NOT NULL, 11 PRIMARY KEY("id"), 12 "name" VARCHAR (32) NOT NULL 13 ); 14 CREATE UNIQUE INDEX "identity_credential_types_name_idx" ON "identity_credential_types" (name); 15 CREATE TABLE "identity_credentials" ( 16 "id" UUID NOT NULL, 17 PRIMARY KEY("id"), 18 "config" jsonb NOT NULL, 19 "identity_credential_type_id" UUID NOT NULL, 20 "identity_id" UUID NOT NULL, 21 "created_at" timestamp NOT NULL, 22 "updated_at" timestamp NOT NULL, 23 FOREIGN KEY ("identity_id") REFERENCES "identities" ("id") ON DELETE cascade, 24 FOREIGN KEY ("identity_credential_type_id") REFERENCES "identity_credential_types" ("id") ON DELETE cascade 25 ); 26 CREATE TABLE "identity_credential_identifiers" ( 27 "id" UUID NOT NULL, 28 PRIMARY KEY("id"), 29 "identifier" VARCHAR (255) NOT NULL, 30 "identity_credential_id" UUID NOT NULL, 31 "created_at" timestamp NOT NULL, 32 "updated_at" timestamp NOT NULL, 33 FOREIGN KEY ("identity_credential_id") REFERENCES "identity_credentials" ("id") ON DELETE cascade 34 ); 35 CREATE UNIQUE INDEX "identity_credential_identifiers_identifier_idx" ON "identity_credential_identifiers" (identifier);