PostgreSQL - aplicar rtrim a todos los campos texto de una base de datos

 
Vista:

aplicar rtrim a todos los campos texto de una base de datos

Publicado por Jorge Morales (6 intervenciones) el 25/02/2020 22:02:40
Muy buenos dias a todos, espero se encuentren muy bien

Migre una base de datos de sqlserver a postgres y necesito aplicarle un rtrim a todos los campos tipo texto de todas las tablas.

Alguien tendra un procedimiento que barra tablas y haga un update por cada tabla o que me de una pista de que buscar por favor


Mucgas Gracias y muy buen dia
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

aplicar rtrim a todos los campos texto de una base de datos

Publicado por Jorge Morales (6 intervenciones) el 26/02/2020 00:04:13
Ya lo pude resolver, no se si de la mejor manera pero modifique algunos ejemplos y me sirve

se los dejo por si a alguien le sirve:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
DO $$
DECLARE
  sqltext text := 'The constructed select statement';
  rec1 record;
BEGIN
  FOR rec1 IN
        SELECT table_schema, table_name, column_name, data_type
        FROM information_schema.columns
        WHERE table_schema <> 'pg_catalog'
                AND table_schema <> 'information_schema'
                AND data_type IN ('character varying', 'text', 'character', 'char', 'varchar')
				and table_name = 'dbt10'
        LOOP
        sqltext := concat('update ', rec1."table_name" , ' set "',rec1."column_name" , '" = rtrim("' ,rec1."column_name" , '")');
    raise notice '%', sqltext;
	EXECUTE sqltext;
  END LOOP;
  END; $$
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar