15 lines
821 B
C#
15 lines
821 B
C#
namespace Aegis.Repository.SQLite.Queries;
|
|
|
|
public static class UserQueries
|
|
{
|
|
// Cria user se não existir (subject+issuer é UNIQUE).
|
|
// Em seguida retorna o user_id.
|
|
public const string GetOrCreate = """
|
|
INSERT INTO users (user_id, created_at, subject, issuer, display_name, email)
|
|
VALUES ($user_id, $created_at, $sub, $iss, $display_name, $email)
|
|
ON CONFLICT(subject, issuer) DO UPDATE SET
|
|
display_name = COALESCE(excluded.display_name, users.display_name),
|
|
email = COALESCE(excluded.email, users.email)
|
|
RETURNING user_id;
|
|
""";
|
|
} |