大家好,一般來說,要新增一筆資料,需要注意主鍵是否重複,否則新增會失敗,所以程序會變成:
先查詢是否有重複:
有 => update 更新資料
無 => insert 新增資料
所以...相當麻煩,總共要寫3個query,所以我找一下,發現 mysql 原本就有蠻方便的寫法
:

$db = JFactory::getDBO(); $insertQuery = $db->getQuery(true); $insertQuery->insert('#__test') ->set("guid = 10 ") ->set("name = ".$db->quote("王小明")); $updateQuery = "guid = 10". ",name = ".$db->quote("王小明"); $query = $insertQuery.' ON DUPLICATE KEY UPDATE '.$updateQuery; $db->setQuery($query); $db->execute();
上面是使用 joomla DBO 物件的寫法,下面列出SQL:
INSERT #__test SET guid = 10,name = "王小明" ON DUPLICATE KEY UPDATE guid = 10,name = "王小明"
給大家參考囉,感恩。

留言板
歡迎留下建議與分享!希望一起交流!感恩!