From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | weigelt(at)metux(dot)de |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: REFERENCES error message complaint, suggestion |
Date: | 2004-03-05 15:12:27 |
Message-ID: | 7120.1078499547@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Enrico Weigelt <weigelt(at)metux(dot)de> writes:
> * Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> [2004-03-04 11:24:11 -0500]:
>> Double quotes are for names (identifiers). Single quotes are
>> for string literals (constants).
> BTW: is this general SQL syntax or just PostgeSQL ?
This is SQL92 standard behavior. Relevant extracts from the standard:
<delimited identifier> ::=
<double quote> <delimited identifier body> <double quote>
<character string literal> ::=
[ <introducer><character set specification> ]
<quote> [ <character representation>... ] <quote>
[ { <separator>... <quote> [ <character representation>... ] <quote> }... ]
<double quote> ::= "
<quote> ::= '
> mysql does no distinction (which is IMHO very unclean),
How can they have no distinction? Suppose I write
select 'col' from tab;
select "col" from tab;
If there is a column tab.col, what am I going to get in each case?
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2004-03-05 15:18:29 | Re: relocatable binary distribution |
Previous Message | beer | 2004-03-05 15:06:27 | Re: Trigger Update Issue |