Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » PostgreSQL »

el caracter \ no se registra en db utilizando copy

Estas en el tema de el caracter \ no se registra en db utilizando copy en el foro de PostgreSQL en Foros del Web. Hola que tal, estoy copiando de un archivo.txt a una base de datos con el comando copy, pero el caracer \ no se copia en ...
  #1 (permalink)  
Antiguo 10/12/2010, 18:39
 
Fecha de Ingreso: junio-2007
Mensajes: 254
Antigüedad: 17 años, 5 meses
Puntos: 2
el caracter \ no se registra en db utilizando copy

Hola que tal,

estoy copiando de un archivo.txt a una base de datos con el comando copy, pero el caracer \ no se copia en la cadena, si la cadena original tiene un caracter \ en la cadena copiada este se omite, pero yo quisiera que copie tal cual esta en la cadena original por ejemplo:

43h\kj cadena orignal en .txt

43hkj cadena en la db

se omite \

como puedo solucionarlo,
gracias de antemano por la ayuda,
saludos.
  #2 (permalink)  
Antiguo 12/12/2010, 22:52
 
Fecha de Ingreso: octubre-2010
Mensajes: 83
Antigüedad: 14 años
Puntos: 4
Respuesta: el caracter \ no se registra en db utilizando copy

Una opcion es que en tu archivo cambies los \ por \\ eso haria el escaping.

La otra es que uses modo csv.
  #3 (permalink)  
Antiguo 13/12/2010, 14:44
 
Fecha de Ingreso: junio-2007
Mensajes: 254
Antigüedad: 17 años, 5 meses
Puntos: 2
Respuesta: el caracter \ no se registra en db utilizando copy

Hola snahor_, gracias por la respuesta,

me podrias explicar un poco sobre el modo modo csv.

Gracias de antemano por la ayuda,
saludos.
  #4 (permalink)  
Antiguo 13/12/2010, 15:20
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: el caracter \ no se registra en db utilizando copy

Hola lucas

No te funcionó la primera propuesta de snahor_? Creo que eso solventa el problema.

Lo relacionado con csv, no lo he probado y no tengo la certeza que solucione tu problema, pero es un csv es un (comma separated value) que utiliza la coma para delimitar el valor de un campo. Se puede hacer con excel o desde un editor de texto.

Archivo guardar como.. csv.

Lo importas de la misma forma que el txt.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #5 (permalink)  
Antiguo 13/12/2010, 17:49
 
Fecha de Ingreso: octubre-2010
Mensajes: 83
Antigüedad: 14 años
Puntos: 4
Respuesta: el caracter \ no se registra en db utilizando copy

El modo csv funciona si tu archivo es de campos limitados por cierto caracter, sin importar si es coma o cualquier otro.

La sintaxis basica es asi (asumiendo que estan separados por comas)
Código:
COPY mitabla FROM 'miarchivo' WITH CSV;
Insisto en que pruebes con la primera sugerencia, la de reemplazar. Si pones un ejemplo de tu archivo seria mejor.
  #6 (permalink)  
Antiguo 14/12/2010, 20:17
 
Fecha de Ingreso: junio-2007
Mensajes: 254
Antigüedad: 17 años, 5 meses
Puntos: 2
Respuesta: el caracter \ no se registra en db utilizando copy

hola snahor_, que tal huesos,

el problema es que son muchos campos a importar alrededor de 5000 y tendria que revisar uno por uno y poner \ si corresponde, es por eso que preguntaba si existia alguna forma en que el copy no obvie el \ o tal vez otra alternativa a copy.

gracias por la ayuda,
saludos.

Etiquetas: copy, caracteres
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:01.