You can write your own stored procedure which will check for existing record.
- Try to retrieve the record by its id
- Check if it is null, insert it
- Otherwise you got the row
문제
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.
다른 팁
I'm not sure if I understand what do you need.
After calling INSERT INTO ... ON DUPLICATE KEY UPDATE ... you just simply need to get last_insert_id() from database and this should be all.