github.com/icyphox/x@v0.0.355-0.20220311094250-029bd783e8b8/popx/stub/migrations/source/20200831110752_identity_verifiable_address_remove_code.down.fizz (about)

     1  add_column("identity_verifiable_addresses", "code", "string", {"size": 32, "null": true})
     2  add_column("identity_verifiable_addresses", "expires_at", "timestamp", { "null": true })
     3  
     4  {{ if .IsSQLite }}
     5    sql("UPDATE identity_verifiable_addresses SET code = substr(hex(randomblob(32)), 0, 32) WHERE code IS NULL")
     6    sql("UPDATE identity_verifiable_addresses SET expires_at = CURRENT_TIMESTAMP WHERE expires_at IS NULL")
     7  {{ end }}
     8  
     9  {{ if or .IsMySQL .IsMariaDB }}
    10    sql("UPDATE identity_verifiable_addresses SET code = LEFT(MD5(RAND()), 32) WHERE code IS NULL")
    11    sql("UPDATE identity_verifiable_addresses SET expires_at = CURRENT_TIMESTAMP WHERE expires_at IS NULL")
    12  {{ end }}
    13  
    14  {{ if .IsPostgreSQL }}
    15    sql("UPDATE identity_verifiable_addresses SET code = substr(md5(random()::text), 0, 32) WHERE code IS NULL")
    16    sql("UPDATE identity_verifiable_addresses SET expires_at = CURRENT_TIMESTAMP WHERE expires_at IS NULL")
    17  {{ end }}
    18  
    19  {{ if .IsCockroach }}
    20    sql("UPDATE identity_verifiable_addresses SET code = substr(md5(uuid_v4()), 0, 32) WHERE code IS NULL")
    21    sql("UPDATE identity_verifiable_addresses SET expires_at = CURRENT_TIMESTAMP WHERE expires_at IS NULL")
    22  {{ end }}
    23  
    24  change_column("identity_verifiable_addresses", "code", "string", {"size": 32})
    25  change_column("identity_verifiable_addresses", "expires_at", "timestamp", { "null": false })
    26  
    27  add_index("identity_verifiable_addresses", ["code"], { "unique": true, "name": "identity_verifiable_addresses_code_uq_idx" })
    28  add_index("identity_verifiable_addresses", ["code"], { "name": "identity_verifiable_addresses_code_idx" })