25 lines
784 B
SQL
25 lines
784 B
SQL
CREATE TABLE IF NOT EXISTS auth_identities (
|
|
id TEXT PRIMARY KEY,
|
|
user_id TEXT NOT NULL,
|
|
provider TEXT NOT NULL,
|
|
provider_uid TEXT NOT NULL,
|
|
provider_unionid TEXT,
|
|
display_name TEXT,
|
|
avatar_url TEXT,
|
|
is_verified BOOLEAN NOT NULL DEFAULT TRUE,
|
|
meta_json JSONB,
|
|
created_at TEXT NOT NULL,
|
|
updated_at TEXT NOT NULL,
|
|
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE
|
|
);
|
|
|
|
CREATE UNIQUE INDEX IF NOT EXISTS auth_identities_provider_uid_unique_idx
|
|
ON auth_identities (provider, provider_uid);
|
|
|
|
CREATE UNIQUE INDEX IF NOT EXISTS auth_identities_provider_unionid_unique_idx
|
|
ON auth_identities (provider, provider_unionid)
|
|
WHERE provider_unionid IS NOT NULL;
|
|
|
|
CREATE INDEX IF NOT EXISTS auth_identities_user_idx
|
|
ON auth_identities (user_id, provider);
|