Re: rowset-returning function mismatch

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: rowset-returning function mismatch
Дата
Msg-id 28590.1106957301@sss.pgh.pa.us
обсуждение исходный текст
Ответ на rowset-returning function mismatch  ("Ed L." <pgsql@bluepolka.net>)
Список pgsql-general
"Ed L." <pgsql@bluepolka.net> writes:
> I ask because it seems like "char" and char should match as type names,
> but don't.

No, they don't.  char without any quotes is a SQL reserved word that
is equivalent to CHARACTER(1).  "char" with quotes is not a reserved
word, by definition.  For largely historical reasons it happens to match
a single-byte datatype that existed in the deeps of time in PostQUEL,
and is still used in our system catalogs as a sort of poor man's
enumeration type.

Note the different results here:

regression=# create table foo (a char, b "char");
CREATE TABLE
regression=# \d foo
        Table "public.foo"
 Column |     Type     | Modifiers
--------+--------------+-----------
 a      | character(1) |
 b      | "char"       |

regression=#

            regards, tom lane

В списке pgsql-general по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: Rule problem with OLD / NEW record set (repost)
Следующее
От: "Andre Schnoor"
Дата:
Сообщение: Re: Moving from Sybase to Postgres - Stored Procedures