2 CREATE OR REPLACE FUNCTION migration_tools.is_blank (TEXT) RETURNS BOOLEAN AS $$
4 RETURN CASE WHEN $1 = '' THEN TRUE ELSE FALSE END;
6 $$ LANGUAGE PLPGSQL STRICT STABLE;
8 DROP FUNCTION IF EXISTS migration_tools.btrim_lcolumns(TEXT,TEXT);
9 CREATE OR REPLACE FUNCTION migration_tools.btrim_lcolumns(s_name TEXT, t_name TEXT) RETURNS BOOLEAN
16 FOR c_name IN SELECT column_name FROM information_schema.columns WHERE
18 AND table_schema = s_name
19 AND (data_type='text' OR data_type='character varying')
20 AND column_name like 'l_%'
22 EXECUTE FORMAT('UPDATE ' || s_name || '.' || t_name || ' SET ' || c_name || ' = BTRIM(' || c_name || ')');
29 DROP FUNCTION IF EXISTS migration_tools.btrim_columns(TEXT,TEXT);
30 CREATE OR REPLACE FUNCTION migration_tools.btrim_columns(s_name TEXT, t_name TEXT) RETURNS BOOLEAN
37 FOR c_name IN SELECT column_name FROM information_schema.columns WHERE
39 AND table_schema = s_name
40 AND (data_type='text' OR data_type='character varying')
42 EXECUTE FORMAT('UPDATE ' || s_name || '.' || t_name || ' SET ' || c_name || ' = BTRIM(' || c_name || ')');
49 DROP FUNCTION IF EXISTS migration_tools.null_empty_lcolumns(TEXT,TEXT);
50 CREATE OR REPLACE FUNCTION migration_tools.null_empty_lcolumns(s_name TEXT, t_name TEXT) RETURNS BOOLEAN
57 FOR c_name IN SELECT column_name FROM information_schema.columns WHERE
59 AND table_schema = s_name
60 AND (data_type='text' OR data_type='character varying')
61 AND column_name like 'l_%'
63 EXECUTE FORMAT('UPDATE ' || s_name || '.' || t_name || ' SET ' || c_name || ' = NULL WHERE ' || c_name || ' = '''' ');
70 DROP FUNCTION IF EXISTS migration_tools.null_empty_columns(TEXT,TEXT);
71 CREATE OR REPLACE FUNCTION migration_tools.null_empty_columns(s_name TEXT, t_name TEXT) RETURNS BOOLEAN
78 FOR c_name IN SELECT column_name FROM information_schema.columns WHERE
80 AND table_schema = s_name
81 AND (data_type='text' OR data_type='character varying')
83 EXECUTE FORMAT('UPDATE ' || s_name || '.' || t_name || ' SET ' || c_name || ' = NULL WHERE ' || c_name || ' = '''' ');