10
I have a postgresql function function f_criaproduto(p_texto text)
, I have to go this way f_criaproduto(' meu produto é 'televisao' da melhor qualidade')
.
How can I escape the quotation marks in the text?
10
I have a postgresql function function f_criaproduto(p_texto text)
, I have to go this way f_criaproduto(' meu produto é 'televisao' da melhor qualidade')
.
How can I escape the quotation marks in the text?
10
To escape quotes, you can duplicate them. Example:
f_criaproduto('meu produto é ''televisao'' da melhor qualidade')
To avoid the problem of having too many quotes to exhaust, you can use the dollars syntax:
$$meu produto é 'televisao' da melhor qualidade$$
Note that in this case, the string is set with a pair of dollars instead of quotation marks. If your string also has dollars, you can use a tag to do this by setting it between the dollars. For example, to set the string minha 'televisao' custa uma boa $!
$string$minha 'televisao' custa uma boa $!$string$
It is still possible to use the character \
you need two things:
in the configuration file, you must enable standard_conforming_strings
:
standard_conforming_strings = off
Start your strings with E
. Example:
E'meu produto é \'televisao\' da melhor qualidade'
But this last option is old and should be avoided if possible
9
Simply duplicate the single quotes to generate one escape.
Example:
f_criaproduto(' meu produto é ''televisao'' da melhor qualidade')
Thanks solved my problem..
0
The $ delimiter can be used to separate expressions. Example:
DO $_$
BEGIN
RETURN QUERY EXECUTE $$ || SELECT * FROM alunos || $$;
END;
$_$
Note that the use of the $ can be named: $x$ or $test$. Do not forget that it is necessary to close the same way you started
Browser other questions tagged database postgresql
You are not signed in. Login or sign up in order to post.
Which error appears? the problem is to undo single quotes?
– rray