[PHP-DB] Re: [SQL] update some elements in the array From: Jouni Ahto (jah <email protected>)
Date: 07/13/00

On Thu, 13 Jul 2000, Bernie Huang wrote:

> I want to update the last three element without affecting other
> elements. I could have done it by retrieving all elements in the array
> first and the do a
>
> UPDATE table
> SET arr='{"1","2","3","4","5"}'
> WHERE blahblah
>
> however, that might be troublesome, so I tried
>
> UPDATE table
> SET arr[1]=val1
> arr[2]=val2...
>
> but it didn't work. If anyone knows, please tell me. Thanks for the
> help.

What does "it didn't work" in this case exactly mean?

Did some testing with postgres, results;

create table test (arr text[]);
insert into test values ('{"1","2","3","4","5"}');
select * from test;
          arr
-----------------------
 {"1","2","3","4","5"}
(1 row)
update test set arr[4]='8', arr[2]='9';
select * from test;
          arr
-----------------------
 {"1","9","3","8","5"}
(1 row)

So, updating arrays definitely works. Are you having a syntax error
somewhere or what?

-- Jouni Ahto

-- 
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, e-mail: php-db-unsubscribe <email protected>
For additional commands, e-mail: php-db-help <email protected>
To contact the list administrators, e-mail: php-list-admin <email protected>