Page 1 of 1

IF NOT EXIST UPDATE ALSE INSERT

Posted: Tue Feb 10, 2009 4:42 am
by meee
I am trying to make a right syntax but I don't know how. Please help me to correct it:

Code: Select all

 
mysql_query("IF NOT EXISTS (INSERT INTO users (firstName, lastName, id2, gender) VALUES ('Nick', 'AAAA', '4', 'm')) ELSE (UPDATE users SET firstName='Nick', lastName='AAAA', id2='4', gender='m' WHERE ID='4')") or die (mysql_error());
 
//or
 
mysql_query("IF EXISTS (UPDATE users SET firstName='Nick', lastName='AAAA', id2='4', gender='m' WHERE ID='4') ELSE (INSERT INTO users (firstName, lastName, id2, gender) VALUES ('Nick', 'AAAA', '4', 'm'))") or die (mysql_error());
 

Re: IF NOT EXIST UPDATE ALSE INSERT

Posted: Tue Feb 10, 2009 5:04 am
by sergio-pro

Re: IF NOT EXIST UPDATE ALSE INSERT

Posted: Tue Feb 10, 2009 5:50 am
by meee
thanks, but I can not use this because when updating I don't know primary key row.

Re: IF NOT EXIST UPDATE ALSE INSERT

Posted: Tue Feb 10, 2009 11:33 am
by sergio-pro
I'm afraid you cannot make "IF NOT EXISTS (INSERT" in MySql query.

You need to make a SELECT first, to find out if row exists.