Re: Damn bug!
От | JanWieck@t-online.de (Jan Wieck) |
---|---|
Тема | Re: Damn bug! |
Дата | |
Msg-id | 200007202125.XAA06132@hot.jw.home обсуждение исходный текст |
Ответ на | Damn bug! (Bernie Huang <bernie.huang@ec.gc.ca>) |
Ответы |
Re: Damn bug!
|
Список | pgsql-bugs |
Bernie Huang wrote: [Charset iso-8859-15 unsupported, filtering to ASCII...] > Hi, > > Sorry for the subject, but it is driving me crazy that I spend my entire > morning searching for this little bug. =( > > Well, I found it. > > I have a field using array (eg; col1 text[]) in Postgres, and it's a > list of attributes. (eg; {"hi","hello","whatever","Empty",...}) > > When I tried to update elements in the array via PHP script, > > $query = "update table > set col1[1]='$var1', > col1[2]='$var2', > ... > col1[4]='$var4'"; > > it worked alright; however, when it came to the word 'Empty', it just > wouldn't update. So, after a lot of struggle... )xp ... I finally > replaced the word 'Empty' with 'None' or something alike, and it worked! > > Although this is a rare case, I thought I would just share this with you > so you won't get tripped over it. Don't know if it's a PHP bug or a > Postgres bug! A Postgres bug: pgsql=# create table t1 (a text[]); CREATE pgsql=# insert into t1 values ('{"foo","bar"}'); INSERT 18872 1 pgsql=# select * from t1; a --------------- {"foo","bar"} (1 row) pgsql=# update t1 set a[1] = 'new', a[2] = 'Empty'; UPDATE 1 pgsql=# select * from t1; a --------------- {"new","bar"} (1 row) pgsql=# update t1 set a[1] = 'next', a[2] = 'None'; UPDATE 1 pgsql=# select * from t1; a ----------------- {"next","None"} (1 row) Don't know where this might happen, but it's interesting that our ORDBMS treats some "text" literal special. Looks like a fogotten hack somewhere :-) Jan -- #======================================================================# # It's easier to get forgiveness for being wrong than for being right. # # Let's break this rule - forgive me. # #================================================== JanWieck@Yahoo.com #
В списке pgsql-bugs по дате отправления: