Skip site navigation (1) Skip section navigation (2)

Re: PG meckert *nicht* bei quotes um Zahlen !?

From: "Albe Laurenz" <laurenz(dot)albe(at)wien(dot)gv(dot)at>
To: "Patryk Kordylewski *EXTERN*" <pk(at)fooby(dot)de>,"Martin Spott *EXTERN*" <Martin(dot)Spott(at)mgras(dot)net>,<pgsql-de-allgemein(at)postgresql(dot)org>
Subject: Re: PG meckert *nicht* bei quotes um Zahlen !?
Date: 2012-08-06 07:47:00
Message-ID: D960CB61B694CF459DCFB4B0128514C20838BC2B@exadv11.host.magwien.gv.at (view raw or flat)
Thread:
Lists: pgsql-de-allgemein
Martin Spott schrieb:
>> landcover=> CREATE TABLE test (id integer);
>> CREATE TABLE
>> landcover=> \d test
>>      Tabelle »public.test«
>>   Spalte |   Typ   | Attribute
>>  --------+---------+-----------
>>   id     | integer |
>>
>> landcover=> INSERT INTO test(id) VALUES ('1');
>> INSERT 0 1
>>
>>
>> Ich koennte Stein und Bein schwoeren, dass PG derlei Versuche frueher
>> mit Fehlermeldungen quittiert hat - stimmt das ?

Die älteste Version, die ich habe, ist 8.3, und dort ist es genauso.
Also mindestens seit Februar 2008 hat sich das Verhalten nicht verändert.

Daß das funktioniert, hängt damit zusammen, daß '1' vom Typ "unknown" ist:

test=> SELECT pg_typeof('1');

 pg_typeof
-----------
 unknown
(1 row)

Mit einem "echten" String wäre das nicht gegangen:

test=> INSERT INTO test(id) VALUES ('1'::text);

ERROR:  column "id" is of type integer but expression is of type text
LINE 1: INSERT INTO test(id) VALUES ('1'::text);
                                     ^
HINT:  You will need to rewrite or cast the expression.

Denn es gibt keinen Cast von "text" nach "integer".

Patryk Kordylewski schrieb:
> Quotes sagen nichts über den Datentyp aus, und ich kann mich auch nicht
> daran erinnern das sowas jemals Fehler verursacht hat.

Daß Quotes in SQL nichts über den Datentyp aussagen, halte ich für Unsinn.

Liebe Grüße,
Laurenz Albe

In response to

Responses

pgsql-de-allgemein by date

Next:From: Susanne EbrechtDate: 2012-08-06 14:55:10
Subject: Re: PG meckert *nicht* bei quotes um Zahlen !?
Previous:From: Andreas SchmitzDate: 2012-08-05 16:07:29
Subject: Re: PG meckert *nicht* bei quotes um Zahlen !?

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group