diff --git a/cleanup/pg_run_sql.sh b/cleanup/pg_run_sql.sh new file mode 100755 index 0000000..bdd924d --- /dev/null +++ b/cleanup/pg_run_sql.sh @@ -0,0 +1,47 @@ +#!/usr/bin/bash + +### VARIABLES +BASE=$( dirname "$0" ) + + +### FUNCTIONS + +die() { + echo "ERROR: $*" 1>&2 + exit 99 +} + +prep() { + rsync "$BASE"/pgpass.cnf ${HOST}:.pgpass + ssh ${HOST} chmod 600 .pgpass +} + + +test_conn() { + ssh $HOST 'pg_isready -d jsmdb -h localhost -U jsmdb_user' +} + + +run_sql() { + fn="$1" + cat "$fn" | ssh $HOST 'psql -d jsmdb -h localhost -U jsmdb_user' +} + + +### MAIN +HOST="$1" +[[ -z "$HOST" ]] && die "Missing hostname" + +FN="$2" +[[ -z "$FN" ]] && die "Missing filename" +case "$FN" in + (/*) SQL="$FN" ;; + (*) SQL="${BASE}/${FN}" ;; +esac +[[ -r "$SQL" ]] || die "Cannot read file '$SQL'" + +prep + +test_conn || die "connection not ready" + +run_sql "$SQL" diff --git a/cleanup/user_import_errors.sql b/cleanup/user_import_errors.sql new file mode 100644 index 0000000..bfc2599 --- /dev/null +++ b/cleanup/user_import_errors.sql @@ -0,0 +1,58 @@ +select 'missing display name' + as Comment; +SELECT + lower_user_name + , active + , lower_first_name + , lower_last_name + , display_name + , lower_display_name + , email_address + , lower_email_address +FROM cwd_user +WHERE ID IN (53892, 53893); + +select 'anyone with missing display name' + as Comment; +SELECT + lower_user_name + , active + , lower_first_name + , lower_last_name + , display_name + , lower_display_name + , email_address + , lower_email_address +FROM cwd_user +WHERE + COALESCE(TRIM(display_name),'') = ''; + +select 'missing email address' + as Comment; +SELECT + lower_user_name + , active + , lower_first_name + , lower_last_name + , display_name + , lower_display_name + , email_address + , lower_email_address +FROM cwd_user +WHERE + id IN (10671, 11070, 11095,18659, 53892, 53893, 55269, 55273, 55857, 56299, 58329, 62244); + +select 'anyone with missing email address' + as Comment; +SELECT + lower_user_name + , active + , lower_first_name + , lower_last_name + , display_name + , lower_display_name + , email_address + , lower_email_address +FROM cwd_user +WHERE + COALESCE(TRIM(email_address),'') = '';