Dennis Bjorklund wrote:
> On Tue, 2 Aug 2005, Jeff Davis wrote:
>
>
>>>>Does the SQL standard provide no way to have a NULL character in a
>>>>string constant? Is single-quote the only special character?
>>>
>>>I don't think it forbids you from using the null character. It's not like
>>>the strings are zero terminated. Some encodings might not allow the null
>>>character, but that's different.
>>
>>But doesn't PostgreSQL forbid us from using the NULL character in a
>>query at all? Don't we always have to escape or encode it in some way?
>
>
> Pg does not allow \0 in strings at all. Try SELECT 'abc\0def'; in the
> current version of pg.
>
> The sql standard doesn't forbid null values in strings as far as I know
> and that's all I talked about. To have a sql standard string with null
> inside you just insert the 0 byte (for normal single byte encodings), no
> escaping needed.
I guess what I'm trying to find out: does this mean that after all this
change to the way strings are handled in the future, PostgreSQL still
won't be standards-compliant for the basic '' string?
Also, let's say I have apps now in 7.4/8.0, and I want them to be
forward-compatible. Should I make a type called E so that the E''
notation will work, and then use that for strings? What is the "right"
way to do it?
I found a few things in the archives, but I didn't see these particular
things addressed.
Regards,Jeff Davis