Possible Duplicate:
Normalized DB insertions
Is it possible to do a single query that will look for a record and either return it's ID or insert it and return it's ID? Here's what I was thinking may work for this:
INSERT INTO firstname (id, name) VALUES (NULL,'$name')
ON DUPLICATE KEY UPDATE name ='$name', id=LAST_INSERT_ID(id)
If it helps, I'm using ezSQL and could just do a $db->query("...");
then an $id = $db->insert_id;
to grab the insert id and use it in a variable.
You can write your own stored procedure which will check for existing record.