33 lines
1.5 KiB
SQL
33 lines
1.5 KiB
SQL
-- Insert Users into UserNovelDataService database
|
|
-- Run this against: UserNovelDataService PostgreSQL database
|
|
--
|
|
-- PREREQUISITE: You must have extracted users from UserService first
|
|
-- using 01_extract_users_from_userservice.sql
|
|
|
|
-- Option 1: If you have a CSV file from export
|
|
-- \copy "Users" ("Id", "OAuthProviderId", "CreatedTime", "LastUpdatedTime") FROM '/tmp/users_export.csv' WITH CSV HEADER;
|
|
|
|
-- Option 2: Direct cross-database insert using dblink
|
|
-- First, install dblink extension if not already done:
|
|
-- CREATE EXTENSION IF NOT EXISTS dblink;
|
|
|
|
-- Example using dblink (adjust connection string):
|
|
/*
|
|
INSERT INTO "Users" ("Id", "OAuthProviderId", "CreatedTime", "LastUpdatedTime")
|
|
SELECT
|
|
"Id"::uuid,
|
|
"OAuthProviderId",
|
|
"CreatedTime"::timestamp with time zone,
|
|
"LastUpdatedTime"::timestamp with time zone
|
|
FROM dblink(
|
|
'host=localhost port=5432 dbname=userservice user=postgres password=yourpassword',
|
|
'SELECT "Id", "OAuthProviderId", "CreatedTime", "LastUpdatedTime" FROM "Users" WHERE "Disabled" = false'
|
|
) AS t("Id" uuid, "OAuthProviderId" text, "CreatedTime" timestamp with time zone, "LastUpdatedTime" timestamp with time zone)
|
|
ON CONFLICT ("Id") DO UPDATE SET
|
|
"OAuthProviderId" = EXCLUDED."OAuthProviderId",
|
|
"LastUpdatedTime" = EXCLUDED."LastUpdatedTime";
|
|
*/
|
|
|
|
-- Option 3: Paste generated INSERT statements from extraction script here
|
|
-- INSERT INTO "Users" ("Id", "OAuthProviderId", "CreatedTime", "LastUpdatedTime") VALUES (...) ON CONFLICT ("Id") DO NOTHING;
|