Reply to Re: Determining whether to INSERT or UPDATE

Your name:

Reply:


Posted by Rik Wasmus on 01/02/08 02:00

On Wed, 02 Jan 2008 02:56:31 +0100, Aaron Gray <ang.usenet@gmail.com> =

wrote:

> "Rik Wasmus" <luiheidsgoeroe@hotmail.com> wrote in message
> news:op.t392n4xa5bnjuv@metallium.lan...
> On Wed, 02 Jan 2008 01:50:20 +0100, Aaron Gray <ang.usenet@gmail.com>
> wrote:
>
>> I have a MySQL table of pages each with a 'title' and 'page' fields.
>>
>> How do I do either an UPDATE if the pages 'title' exists or an INSERT=
if
>> it
>> does not ?
>>
>> The code I have written does not seem to do the job correctly.
>>
>> $result =3D mysql_query( "SELECT page FROM pages WHERE title =3D =
'" .
>> $title
>> . "';");
>>
>> $row =3D mysql_fetch_array( $result, MYSQL_ASSOC);
>>
>> if ( isset( $row["title"]) && $row[title] =3D=3D $title)
>> {
>> $result =3D mysql_query( "UPDATE pages SET page =3D '". $page=
. "'
>> WHERE
>> title =3D '" .$title . "';");
>> if ($result)
>> mysql_query( "COMMIT;");
>> }
>> else
>> {
>> $result =3D mysql_query( "INSERT INTO pages SET title =3D'" .=
$title
>> .
>> "', page =3D '" . $page . "';");
>> if ($result)
>> mysql_query( "COMMIT;");
>> };
>>
>> This code is buggy and doing an insert rather than an update. How wou=
ld
>> you
>> approach this task ?
>
> It could be done with one easy query, look into ON DUPLICATE KEY =

> UPDATE
> syntax, ask in comp.databases.mysql
>
> I need to keep the logic in PHP rather than using SQL.

And why is that? Could you tell us what you expect to benefit from that?=
=

This kind of thing should IMHO be handled by the database, maintaining =

integrity of the data it holds is something a database is good at.
-- =

Rik Wasmus

[Back to original message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация