Hello,
On 17.10.2011 15:44, Boszormenyi Zoltan wrote:
2011-10-17 14:28 keltezéssel, Susanne Ebrecht írta:
On 17.10.2011 10:30, Simon Riggs wrote:
On Mon, Oct 17, 2011 at 8:31 AM, Susanne Ebrecht
<susa...@2ndquadrant.com> wrote:
PostgreSQL isn't supporting CHAR(0).
What does the SQL Standard say?
Document: 02-Foundation
Section: 4.2.1 Introduction to character strings
Begin quoting
A character string is a sequence of characters. All the characters in
a character string are taken from a single
character set. A character string has a length, which is the number
of characters in the sequence. The length is
0 (zero) or a positive integer.
End quoting
I am looking at 6WD2_02_Foundation_2007-12.pdf.
Search for "<character length>" that is used in section "6.1 <data
type>":
<character length> := <unsigned integer> [ <char length units> ]
Section 6.1 doesn't talk about limiting the definition to > 0 values
But in page 157, section "5.3 <literal>":
============================================================
17) The declared type of a <character string literal> is fixed-length
character string. The length of a <character
string literal> is the number of <character representation>s that it
contains. Each <quote symbol> contained
in <character string literal> represents a single <quote> in both the
value and the length of the <character
string literal>. The two <quote>s contained in a <quote symbol> shall
not be separated by any <separator>.
NOTE 92 — <character string literal>s are allowed to be zero-length
strings (i.e., to contain no characters) even though it is
not permitted to declare a <data type> that is CHARACTER with
<character length> 0 (zero).
============================================================
So, a table column is not allowed to be char(0) or varchar(0). It's
explicit in NOTE 92.
I looked this up again.
I found more passages in which is written that it should start with 0.
But in the section you mentioned here - 1 is given.
That is a bug in SQL Standard. SQL Standard is inconsistent here.
The next SQL Standard meeting is next week.
Of course I will bring up this problem.
We will see what will be the outcome of it.
Susanne
--
Susanne Ebrecht - 2ndQuadrant
PostgreSQL Development, 24x7 Support, Training and Services
www.2ndQuadrant.com
--
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs