List:General Discussion« Previous MessageNext Message »
From:Evelyn Schwartz Date:February 9 2004 5:17pm
Subject:RE: There has to be a way to do this
View as plain text  
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:mtuller@stripped] 
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/mysql?unsub=1

Thread
There has to be a way to do thisMike Tuller9 Feb
  • Re: There has to be a way to do thisvpendleton9 Feb
  • Re: There has to be a way to do thisgerald_clark9 Feb
    • Re: There has to be a way to do thisMike Tuller9 Feb
      • Re: There has to be a way to do thisgerald_clark9 Feb
        • Re: There has to be a way to do thisMike Tuller9 Feb
        • Re: There has to be a way to do thisMike Tuller10 Feb
          • Re: There has to be a way to do thisgerald_clark10 Feb
          • Re: There has to be a way to do thisEamon Daly10 Feb
          • Re: There has to be a way to do thisThomas Spahni11 Feb
      • Re: There has to be a way to do thisRyan Yagatich9 Feb
        • Re: There has to be a way to do thisRyan Yagatich10 Feb
  • Re: There has to be a way to do thisAlec.Cawley9 Feb
RE: There has to be a way to do thisEvelyn Schwartz9 Feb