PGS 7.2 : Insert with wrong number of values did not fail

Started by Geoffrey KRETZabout 21 years ago7 messagesgeneral
Jump to latest

Hi,

I've got a question about a difference beetween PGS 7.2 and PGS 7.4
behaviours.

With PGS 7.2 :
INSERT INTO table (col1, col2) VALUES (val1) doesn't fail

With PGS 7.4 :
INSERT INTO table (col1, col2) VALUES (val1) failed

Is it a known bug ?

Thx.

Geoffrey KRETZ
Four J's Development Tools

#2Scott Marlowe
smarlowe@g2switchworks.com
In reply to: Geoffrey KRETZ (#1)
Re: PGS 7.2 : Insert with wrong number of values did not

On Mon, 2005-02-21 at 09:38, Geoffrey KRETZ wrote:

Hi,

I've got a question about a difference beetween PGS 7.2 and PGS 7.4
behaviours.

With PGS 7.2 :
INSERT INTO table (col1, col2) VALUES (val1) doesn't fail

With PGS 7.4 :
INSERT INTO table (col1, col2) VALUES (val1) failed

Is it a known bug ?

Yes, if 7.2 did that it WAS a known bug. Fixed in 7.4. It is illegal
to have unmatching numbers of columns in the insert list and the column
list.

Did 7.2 really do that?

In reply to: Scott Marlowe (#2)
Re: PGS 7.2 : Insert with wrong number of values did not

Scott Marlowe wrote:

On Mon, 2005-02-21 at 09:38, Geoffrey KRETZ wrote:

Hi,

I've got a question about a difference beetween PGS 7.2 and PGS 7.4
behaviours.

With PGS 7.2 :
INSERT INTO table (col1, col2) VALUES (val1) doesn't fail

With PGS 7.4 :
INSERT INTO table (col1, col2) VALUES (val1) failed

Is it a known bug ?

Yes, if 7.2 did that it WAS a known bug. Fixed in 7.4. It is illegal
to have unmatching numbers of columns in the insert list and the column
list.

Did 7.2 really do that?

7.1 do that and while testing recently, we found that in 7.2, it's the
same behaviour. In 7.3, it's already ok.

I've answer the question just to be sure that it's a postgresql bug.

Geoffrey KRETZ
Four J's Development Tools

In reply to: Geoffrey KRETZ (#3)
Re: PGS 7.2 : Insert with wrong number of values did not

Geoffrey KRETZ wrote:

Scott Marlowe wrote:

On Mon, 2005-02-21 at 09:38, Geoffrey KRETZ wrote:

Hi,

I've got a question about a difference beetween PGS 7.2 and PGS 7.4
behaviours.

With PGS 7.2 :
INSERT INTO table (col1, col2) VALUES (val1) doesn't fail

With PGS 7.4 :
INSERT INTO table (col1, col2) VALUES (val1) failed

Is it a known bug ?

Yes, if 7.2 did that it WAS a known bug. Fixed in 7.4. It is illegal
to have unmatching numbers of columns in the insert list and the column
list.

Did 7.2 really do that?

7.1 do that and while testing recently, we found that in 7.2, it's the
same behaviour. In 7.3, it's already ok.

I've answer the question just to be sure that it's a postgresql bug.

I've ASK the question (not answered it !!)

Sorry for the mistake :-/

Geoffrey

#5Tom Lane
tgl@sss.pgh.pa.us
In reply to: Geoffrey KRETZ (#1)
Re: PGS 7.2 : Insert with wrong number of values did not fail

Geoffrey KRETZ <gk@4js.com> writes:

I've got a question about a difference beetween PGS 7.2 and PGS 7.4
behaviours.

With PGS 7.2 :
INSERT INTO table (col1, col2) VALUES (val1) doesn't fail

With PGS 7.4 :
INSERT INTO table (col1, col2) VALUES (val1) failed

Is it a known bug ?

More a deliberate change in behavior. The old behavior was intentional
but we decided it was too much at variance with the SQL spec. Now you
can only omit columns when you don't specify a column name list.

regards, tom lane

#6Scott Marlowe
smarlowe@g2switchworks.com
In reply to: Geoffrey KRETZ (#3)
Re: PGS 7.2 : Insert with wrong number of values did not

On Mon, 2005-02-21 at 09:49, Geoffrey KRETZ wrote:

Scott Marlowe wrote:

On Mon, 2005-02-21 at 09:38, Geoffrey KRETZ wrote:

Hi,

I've got a question about a difference beetween PGS 7.2 and PGS 7.4
behaviours.

With PGS 7.2 :
INSERT INTO table (col1, col2) VALUES (val1) doesn't fail

With PGS 7.4 :
INSERT INTO table (col1, col2) VALUES (val1) failed

Is it a known bug ?

Yes, if 7.2 did that it WAS a known bug. Fixed in 7.4. It is illegal
to have unmatching numbers of columns in the insert list and the column
list.

Did 7.2 really do that?

7.1 do that and while testing recently, we found that in 7.2, it's the
same behaviour. In 7.3, it's already ok.

I've answer the question just to be sure that it's a postgresql bug.

Note that in the old version, postgresql would have inserted a default
value or a NULL if there was no default. With the addition of the
DEFAULT keyword, you can get the same basic effect with:

insert into table (col1, col2) values (val1,DEFAULT);

In reply to: Scott Marlowe (#6)
Re: PGS 7.2 : Insert with wrong number of values did not

Scott Marlowe wrote:

On Mon, 2005-02-21 at 09:49, Geoffrey KRETZ wrote:

Scott Marlowe wrote:

On Mon, 2005-02-21 at 09:38, Geoffrey KRETZ wrote:

Hi,

I've got a question about a difference beetween PGS 7.2 and PGS 7.4
behaviours.

With PGS 7.2 :
INSERT INTO table (col1, col2) VALUES (val1) doesn't fail

With PGS 7.4 :
INSERT INTO table (col1, col2) VALUES (val1) failed

Is it a known bug ?

Yes, if 7.2 did that it WAS a known bug. Fixed in 7.4. It is illegal
to have unmatching numbers of columns in the insert list and the column
list.

Did 7.2 really do that?

7.1 do that and while testing recently, we found that in 7.2, it's the
same behaviour. In 7.3, it's already ok.

I've answer the question just to be sure that it's a postgresql bug.

Note that in the old version, postgresql would have inserted a default
value or a NULL if there was no default. With the addition of the
DEFAULT keyword, you can get the same basic effect with:

insert into table (col1, col2) values (val1,DEFAULT);

I've read a thread about that, but I wasn't sure about the PostgreSQL's
version where the change was made.

Thx for your answers !

Geoffrey KRETZ
Four J's Development Tools