Re: Error on deleting

From: "Dave Page" <dpage(at)vale-housing(dot)co(dot)uk>
To: "Indibil" <indibil(at)webmail(dot)co(dot)za>, <pgadmin-support(at)postgresql(dot)org>
Subject: Re: Error on deleting
Date: 2004-04-01 11:45:01
Message-ID: 03AF4E498C591348A42FC93DEA9661B889F906@mail.vale-housing.co.uk
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-support

Hi Indibil

Yes, that is what I suspected was the problem. pgAdmin II cannot
properly recognise multi-column primary keys. I would normally suggest
upgrading to pgAdmin III, but as you said your app was running on
PostgreSQL 7.2 I did not bother.

Unfortunately the only ways around this are going to be:

1) Grab the pgAdmin II source code and fix it (not an easy task which is
why I never did it).
2) Upgrade your server to 7.4.2 and using pgAdmin III.
3) Manually delete rows using an explicit SQL command.

Regards, Dave.

> -----Original Message-----
> From: Indibil [mailto:indibil(at)webmail(dot)co(dot)za]
> Sent: 31 March 2004 17:08
> To: pgadmin-support(at)postgresql(dot)org
> Subject: Re: [pgadmin-support] Error on deleting
>
> Hi David:
>
> I have another server with PostgreSQL 7.3 so, I dumped the
> PostgreSQL 7.2 database and restored it in 7.3. With
> pgAdmin_II I get the same error when I try to delete a record
> from the table "escritos". This table has a primary key with
> two fields: "cod_ficha", "cod_estado". If, for example, I
> select the records:
>
> cod_ficha cod_estado
> ------------ ---------------
> 2003000001 0001
> 2003000001 0023
>
> When I try to delete only one of them, I get the message:
> "The selected record could not be uniquely identified, 2
> records match, and will all be deleted if you proceed. Do you
> wish to continue?".
>
> The last lines in the pg_adminII.log are:
> SELECT count(*) AS count FROM public.escritos WHERE
> cod_ficha=2003000001 DELETE public.escritos WHERE cod_ficha=2003000001
>
> I think the problem is in the DELETE statement because the
> WHERE condition must be: ....... WHERE cod_ficha=2003000001
> AND cod_estado='0023'
>
> Whith pgAdmin III there is no problem on deleting because it
> issues the following deleting statement:
> DELETE public.escritos WHERE oid=169858256
>
>
> Thanks a lot for your interest David,
>
> Indibil
>
>
> Dave Page wrote:
>
> > It's rumoured that Indibil once said:
> >> Hi:
> >>
> >> I have a PostgreSQL 7.2.2 database since 2 years working
> right until
> >> now. When I try to delete a row from pgAdmin II , I get
> the message "
> >> ....cannot uniquely identify, 2 rows match....." If I go
> on deleting
> >> the row, the 2 ones are deleted. Of Course the 2 rows don't match.
> >> They have different primary key, OIDs, and so on.
> >
> > Hmm, can you re-create this with logging set to errors +
> sql please?
> > Then send the logfile...
> > Regards, Dave
> >
> >
> >
> > ---------------------------(end of
> > broadcast)---------------------------
> > TIP 8: explain analyze is your friend
>
>
> ---------------------------(end of
> broadcast)---------------------------
> TIP 9: the planner will ignore your desire to choose an index
> scan if your
> joining column's datatypes do not match
>

Browse pgadmin-support by date

  From Date Subject
Next Message Richard Huxton 2004-04-06 17:09:28 Re: Error on deleting
Previous Message Indibil 2004-03-31 16:07:42 Re: Error on deleting