我想用Erlang和epgsql執行簡單的PostgreSQL查詢,如Erlang and PostgreSQL。但wnen發出以下代碼:通過pgsql(Erlang)連接到PostgreSQL
{ok, C} = pgsql:connect("localhost",
"postgres",
"nevermind",
[{database, "postgres"}]).
我得到這個錯誤:
** exception error: no match of right hand side value
{error,
{authentication,
[{severity,'Ð\222Ð\220Ð\226Ð\235Ð\236'},
{code,"28000"},
{message,
[208,191,208,190,208,187,209,140,208,183,208,
190,208,178,208,176,209,130,208,181|...]},
{file,"auth.c"},
{line,302},
{routine,"auth_failed"}]}}
PostgreSQL的工作,我可以添加表到我的數據庫或做簡單的查詢。但我需要用Erlang來做。更重要的,我不能在列表中閱讀完整的錯誤消息:
[208,191,208,190,208,187,209,140,208,183,208,190,208,178,208,176,209,130,208,181|...]
錯誤消息告訴您,不是返回{ok,C},連接失敗並返回認證錯誤。到目前爲止,我無法幫到你,但你應該看看連接參數和認證數據。如果你有源代碼,也許你可以通過閱讀302行附近的文件auth.c獲得更多的信息。 – Pascal
這是一個PostgreSQL錯誤28000 INVALID AUTHORIZATION SPECIFICATION。你確定你提供了正確的用戶名嗎? – Vinod
我認爲第三個參數必須是用戶名,但在教程中第三個參數是密碼。那麼第二個參數是什麼? –