2016-05-02 3 views
1

Я создал процедуру в postgresql, как показано ниже.out result result by node pg module - postgresql

CREATE OR REPLACE FUNCTION public.functiontest2(
    IN data numeric, 
    OUT result numeric, 
    OUT result1 numeric) 
RETURNS record AS 
$BODY$ 
    DECLARE 
    declare SEQVAL decimal := 10; 

    BEGIN 
     result=SEQVAL; 
     result1=data; 
    END; 
$BODY$ 
LANGUAGE plpgsql VOLATILE 
COST 100; 

Теперь я выполнил эту процедуру из узла пг в

client.query('select functionTest2(10)', input, function(err, result){}); 

Ранее Когда я выполнил выше кода, он дал мне результат в следующем формате.

{ 
"command":"SELECT", 
"rowCount":1, 
"oid":null, 
"rows":[{"result":"10"},{"result1":"10"}], 
"fields":[{"name":"result","tableID":0,"columnID":0,"dataTypeID":1700,"dataTypeSize":-1,"dataTypeModifier":-1,"format":"text"}], 
"_parsers":[null], 
"rowAsArray":false 
} 

Но теперь я удалил узел pg module и установил узел pg module снова. Это дает мне результат в следующем формате

{ 
"command":"SELECT", 
"rowCount":1, 
"oid":null, 
"rows":[{"functiontest2":"(10,10)"}], 
"fields":   [{"name":"functiontest2","tableID":0,"columnID":0,"dataTypeID":2249,"dataTypeSize":-1,"dataTypeModifier":-1,"format":"text"}], 
"_parsers":[null], 
"rowAsArray":false} 

Таким образом, разница вместо возврата пары значений имя для записей, она возвращает имя функции и массив значений. Я попытался установить другую версию узла pg module, но проблема не устранена.

Заранее спасибо.

+0

ok .. ребята, я нашел проблему .. На самом деле мне нужно использовать запрос, например select * from function2 (10); Он решил проблему –

ответ

1

ok .. ребята, я нашел проблему .. На самом деле мне нужно использовать запрос, например select * from function2 (10); Он решил проблему