0
ON衝突DO UPDATE/DO NOTHING功能在PostgreSQL 9.5。 創建服務器和FOREIGN TABLE即將在PostgreSQL 9.2版本。關於衝突DO UPDATE/DO NOTHING NOT FOR FOREIGN TABLE
當我使用ON衝突不需更新爲外部表它不工作, 但是當我跑步時對正常表相同的查詢是working.Query如下。
// 對於正常表
INSERT INTO app
(app_id,app_name,app_date)
SELECT
p.app_id,
p.app_name,
p.app_date FROM app p
WHERE p.app_id=2422
ON CONFLICT (app_id) DO
UPDATE SET app_date = excluded.app_date ;
O/P:查詢成功返回:一排的影響,5毫秒執行時間。
//對於外部表的概念
// foreign_app是外部表和應用是正常的表
INSERT INTO foreign_app
(app_id,app_name,app_date)
SELECT
p.app_id,
p.app_name,
p.app_date FROM app p
WHERE p.app_id=2422
ON CONFLICT (app_id) DO
UPDATE SET app_date = excluded.app_date ;
O/P:ERROR:有沒有獨特的或排他條件相匹配的ON衝突規範
任何一個可以解釋爲什麼會出現這種情況?