From: | Richard Huxton <dev(at)archonet(dot)com> |
---|---|
To: | "Wang, Mary Y" <mary(dot)y(dot)wang(at)boeing(dot)com> |
Cc: | "Joshua D(dot) Drake" <jd(at)commandprompt(dot)com>, pgsql-general(at)postgresql(dot)org |
Subject: | Re: Unable to Update a Record |
Date: | 2005-08-01 16:44:17 |
Message-ID: | 42EE5161.90900@archonet.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Wang, Mary Y wrote:
> Sorry, that I didn't explain my problem very clearly.
> Anyway, here is the deal:
>
> I'm the admin for the database, so, I've all the privileges of updating,
> deletion, and reviewing and et.
>
> When I tried to select based on the bemsid condition, TWO ROWS returned:
>
> select * from users where bemsid=949762;
>
> user_id | user_name | email | user_pw | realname
> 4215 | 949762 | john(dot)a(dot)hoff(at)boeing(dot)com | | Hoff, John A |
>
> But when I tried select user_id=4215, the result return 0 rows:
>
> select * from users where user_id=4215;
> user_id | user_name | email | user_pw | realname | status | shell |
> -----+----------------------+---------------------
> (0 rows)
>
> I'm really confused. I want to delete user_id=4215 because it is
> causing me login errors. But I can't select, update, delete that
> record. I'm not sure if that record really exist.
1. What type is "user_id"?
If it's a text-type, there could be unseen spaces interfering.
2. Try selecting the OID too (SELECT oid,* FROM ...) with your first
query, then use that oid in your where clause. Can you see it now? Of
course, this assumes you have oids defined for this table.
3. Have you tried re-indexing the table (REINDEX TABLE users)
It's possible the index has become corrupted while the data is fine.
--
Richard Huxton
Archonet Ltd
From | Date | Subject | |
---|---|---|---|
Next Message | Vratislav_Morkus | 2005-08-01 16:44:50 | PostgreSQL vs. MySQL |
Previous Message | Wang, Mary Y | 2005-08-01 16:20:54 | Re: Unable to Update a Record |