package migrationsimport ("context""database/sql""github.com/pressly/goose/v3")func init() {goose.AddMigrationContext(upAddReferentialIntegrityToUserProps, downAddReferentialIntegrityToUserProps)}func upAddReferentialIntegrityToUserProps(_ context.Context, tx *sql.Tx) error {_, err := tx.Exec(`create table user_props_dg_tmp(user_id varchar not nullconstraint user_props_user_id_fkreferences useron update cascade on delete cascade,key varchar not null,value varchar,constraint user_props_pkprimary key (user_id, key));insert into user_props_dg_tmp(user_id, key, value) select user_id, key, value from user_props;drop table user_props;alter table user_props_dg_tmp rename to user_props;`)return err}func downAddReferentialIntegrityToUserProps(_ context.Context, tx *sql.Tx) error {return nil}