2010-11-30 42 views
2

J'ai fait une simple fonction dans le cadre de mes devoirs, mais pour la vie de moi je ne peux pas comprendre comment l'appeler et le tester. Quelqu'un peut-il me dire comment?fonction d'appel dans postgresql

-- Procedure 
CREATE OR REPLACE FUNCTION addDoctor (
    a INT, 
    b VARCHAR (20), 
    c VARCHAR (20) 
) RETURNS VOID 
LANGUAGE plpsql 
AS $BODY$ 
BEGIN 
    INSERT INTO doctor 
    VALUES (a,b,c); 
END; 
$BODY$ 

Répondre

7

Utilisation SELECT:

SELECT function_name(); 
+0

J'ai essayé cela et il me donne l'erreur de syntaxe d'erreur à ou près de "SELECT". Peut-être que je suis en train de massacrer la fonction, mais cela ne génère pas d'erreur. Je vais modifier pour montrer mon code. – Pinsickle

+2

LANGUAGE plpsql est faux, cela devrait être plpgsql avec un "g" supplémentaire. –

+0

ha ha crap. Merci – Pinsickle

0
CREATE or REPLACE FUNCTION analyzer(character varying, character varying) 
    RETURNS boolean AS 
$BODY$ 
-- 
begin 
-- 
    execute 'analyze '||quote_ident($1)||'.'||quote_ident($2) ; 
return 1 ; 
-- 
end ; 
$BODY$ 
    LANGUAGE plpgsql VOLATILE SECURITY DEFINER; 
+1

Bienvenue sur SO. Comment cela répond-il à la question? – dic19

+0

Veuillez ajouter une explication de votre code. –

0

si vous avez besoin d'appeler la fonction juste pour vérifier les exceptions qui peuvent se produire là-bas vont effectuer:

PERFORM f_foo(i); 

si vous avez besoin d'un résultat , sélectionnez

SELECT function_name();