Saltar al contenido

Literales de cadena y caracteres de escape en postgresql

Siéntete en la libertad de divulgar nuestros tutoriales y códigos con tus amigos, necesitamos tu ayuda para ampliar esta comunidad.

Solución:

Parcialmente. El texto se inserta, pero aún se genera la advertencia.

Encontré una discusión que indicaba que el texto debía ir precedido de ‘E’, como tal:

insert into EscapeTest (text) values (E'This is the first part n And this is the second');

Esto suprimió la advertencia, pero el texto aún no se devolvía correctamente. Cuando agregué la barra adicional como sugirió Michael, funcionó.

Como tal:

insert into EscapeTest (text) values (E'This is the first part \n And this is the second');

Frio.

También encontré la documentación sobre el E:

http://www.postgresql.org/docs/8.3/interactive/sql-syntax-lexical.html#SQL-SYNTAX-STRINGS

PostgreSQL también acepta “escape” string constantes, que son una extensión del estándar SQL. Un escape string La constante se especifica escribiendo la letra E (en mayúsculas o minúsculas) justo antes de la comilla simple de apertura, por ejemplo, E’foo’. (Al continuar un escape string constante entre líneas, escriba E solo antes de la primera comilla de apertura.) Dentro de un escape string, un carácter de barra invertida () comienza una secuencia de escape de barra invertida similar a C, en la que la combinación de barra invertida y los siguientes caracteres representa un valor de byte especial. b es un retroceso, f es un avance de formulario, n es una nueva línea, r es un retorno de carro, t es una tabulación. También se admiten digits, donde digits representa un valor de byte octal, y xhexdigits, donde hexdigits representa un valor de byte hexadecimal. (Es su responsabilidad que las secuencias de bytes que cree sean caracteres válidos en la codificación del conjunto de caracteres del servidor). Cualquier otro carácter que siga a una barra invertida se toma literalmente. Por lo tanto, para incluir un carácter de barra invertida, escriba dos barras invertidas (\). Además, se puede incluir una comilla simple en un escape string escribiendo ‘, además de la forma normal de ”.

La advertencia se emite ya que está utilizando barras invertidas en sus cadenas. Si desea evitar el mensaje, escriba este comando “set standard_conforming_strings=on;”. Luego use “E” antes de su string incluidas las barras invertidas que desea que postgresql interprete.

Sección de Reseñas y Valoraciones

Si eres capaz, eres capaz de dejar una crónica acerca de qué te ha gustado de esta reseña.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *