If you are always updating the entire row you could delete the record (ignoring failures) and then insert the record. Not efficient but it would work.
If you are able to trap errors in your shell script and there is a unique index on the ethernet_address field then you can do this: Update Record If update fails Insert record -----Original Message----- From: Mike Tuller [mailto:[EMAIL PROTECTED] Sent: Monday, February 09, 2004 11:53 AM To: MySql List Subject: There has to be a way to do this I have posted this question a few times, and have not seen the answer that I need. I have a shell script, that gathers information from systems, and I want that info to be entered into a database. I want it to check first to see if the data is already entered, and if not, add it. If it has already been entered, then update the record. I would think that some type of if/else statement would work, but I can't get the IF statement http://www.mysql.com/doc/en/IF_Statement.html to work correctly in MySql. Here is what I have: "IF SELECT * FROM hardware_assets WHERE ethernet_address='$ethernet_address' IS NULL\ THEN INSERT into hardware_assets (ethernet_address) VALUES ($ethernet_address)\ ELSE\ UPDATE hardware_assets SET operating_system='10.3.3'\ END IF;" I get back that I have an error in my SQL syntax. $ethernet_address is set, so that is not my problem. Does anyone know a way to go about this in SQL, or in a shell script? I don't want to do it in Perl or PHP. Thanks, Mike -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED] -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]