-1
Im將我的php應用程序轉換爲使用postgresql而不是mysql。更新postgresql如果密鑰存在與使用php
之前,我有使用PDO這樣的功能:
$stmt = $db->prepare("INSERT INTO $table(id,name,info) VALUES(:id,:name,:info) ON DUPLICATE KEY UPDATE name=:name,info=:info");
$stmt->execute(array(':id' => $id, ':name' => $name, :info' => $info));
如果該鍵不存在,它會創建一個新的項目,否則更新條目。
怎麼可能做一些與postgresql相同?
我已閱讀了一些文章,但沒有人清楚我必須做什麼。我是否需要爲此編寫觸發器或規則?
或者我寫一個檢查在PHP中,如果entry/id存在,並確定它是否應該更新或創建新的?
進出口使用的Postgres 9.1.8
http://www.depesz.com/2012/06/10/why-is-upsert-so-complicated/ – 2013-03-25 11:44:34
有人能解釋一下,我用了「創建函數」 ?我在psql shell中做,在服務器上創建一個文件,在php中使用它?我需要爲每個需要更新的表編寫函數嗎? – 2013-03-25 12:40:45