From: | Dennis Gearon <gearond(at)cvc(dot)net> |
---|---|
To: | Darren Ferguson <darren(at)thread(dot)crystalballinc(dot)com> |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: don't understand something about backslashes |
Date: | 2003-03-20 20:27:38 |
Message-ID: | 3E7A243A.9090404@cvc.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Actually, that is most good!
The backslash causes the character to be treated JUST as a character,
not as part of some command,right?
But then it gets consumed so that it doesn't increase the size of a data
field. Cool!
So I don't have to unescape it when I draw the data back out of the
database, oh so cool!
Darren Ferguson wrote:
> The back slash on insert is just escaping the character so Postgres will
> not throw errors when adding ' or any other specialized charachters into
> the database.
>
> If you want the backslashes to be in the record you have to double escape
> them as shown below.
>
> HTH
>
> Darren
>
> oss=> create table test (id varchar(64) not null);
> CREATE TABLE
> oss=> insert into test values ('darren\'s');
> INSERT 9648444 1
> oss=> select * from test;
> id
> ----------
> darren's
> (1 row)
>
> oss=> insert into test values ('darren\\\'s');
> INSERT 9648445 1
> oss=> select * from test;
> id
> -----------
> darren's
> darren\'s
> (2 rows)
>
>
> On Thu, 20 Mar 2003, Dennis Gearon wrote:
>
>
>>I have a varchar that is 64 wide. I prescape stuff like the '-'
>>character to prevent SQL injection.
>>
>>Here is the EXACT field value that I inserted recently,for a test. It
>>comes to approx 100 chars.
>>
>>'\-1\-1\-1\-1\-1\-1\-1\-1\-1\-1\-1\-1\-1\-1\-1\-1\-1\-1\-1\-1\-1\-1\-1\-1\-1\-1\-1\-1\-1\-1\-1\-1'::varchar,
>>
>>I insert that and get:
>>
>> NO ERROR
>>
>>When I look at the record in phpPgAdmin, the slashes don't show up in
>>the record.
>>
>>So, do they make it to the record, anyone know? What do I have to do for
>>the PostgreSQL engine to prevent '--' character from ending a line in a
>>a string? Or in general, get the backslashes in the record?
>>
>>
>>
>>
>>
>>
>>---------------------------(end of broadcast)---------------------------
>>TIP 6: Have you searched our list archives?
>>
>>http://archives.postgresql.org
>>
>
>
From | Date | Subject | |
---|---|---|---|
Next Message | Darren Ferguson | 2003-03-20 20:31:27 | Re: don't understand something about backslashes |
Previous Message | Stephan Szabo | 2003-03-20 20:21:24 | Re: don't understand something about backslashes |