簡體   English   中英

PostgreSQL函數參數有問題(轉換MySQL存儲過程)

[英]Problem with PostgreSQL function parameters (Converting MySQL Stored Procedures)

我將一些簡單的MySQL存儲過程轉換為PostgreSQL函數,由於某種原因,當我執行以下函數時,執行時會引發錯誤。

我使用以下代碼創建了該函數:

CREATE FUNCTION cc.fs_ivr_updatecalltransfer(_ParentContactID
int[11], _CalledID varchar[32])
RETURNS int AS $$
DECLARE 
pcID int;   
BEGIN
if _ParentContactID<>0 then 
update cc.tblcontacts set cc.tblcontacts.transferdest =
_CalledID where cc.tblcontacts.contactid =
_ParentContactID;
end if;
RETURN _ParentContactID;
END;
$$ LANGUAGE plpgsql;

我像這樣手動執行它:

SELECT cc.fs_ivr_updatecalltransfer(3,"test")

它引發此錯誤:

SQL error:

ERROR:  column "test" does not exist
LINE 1: SELECT cc.fs_ivr_updatecalltransfer(3,"test")
In statement: SELECT  cc.fs_ivr_updatecalltransfer(3,"test")

有什么建議么?

使用單引號引起來的字符串,而不是雙引號。 'test'表示字符串“ test”,而"test"表示標識符“ test”,postgresql嘗試將其解析為列,與在MySQL中使用反引號相同。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM