besoin d aide pour les fonction en postgresql
bonjour
je suis nouveau ici
je m appelle william et je commence un pojet asser important en
postgresql que j ai jaimmais utiliser
je me pose plein de question et j espere que vous pourier m aider
pour un insert j aimerai utiliser une fonction que j ai decomposer en 1
fonction qui appelle 2 sous fonction,la principale appelle addid et dpass que voici
CREATE OR REPLACE FUNCTION addid(x integer, chaine text)
RETURNS text AS
$BODY$
if x > -1:
if chaine == 'Z'
chaine[x]
chaine = addid (--x,chaine)
else :
if chaine[x]=='9'
chaine[x]='a'
else :
$chaine[x]++
return chaine
return chaine
$BODY$
LANGUAGE 'plpythonu' VOLATILE;
2 la sous fonction
CREATE OR REPLACE FUNCTION dpass()
RETURNS text AS
$BODY$
pass="";
pass[0]=random(a..z);
i=0;
while i<4
pass[I]=random(1..9);
return pass
$BODY$
LANGUAGE 'plpythonu' VOLATILE;
voici la fonction principql que j aimerai appeller en php
---------------------------------------------------------------
CREATE OR REPLACE FUNCTION add_client(nom text, prenom text, mail text)
RETURNS boolean AS
$BODY$
DECLARE
liste record;
id text;
nid text;
npass text;
begin
FOR liste IN select fin_client from index_serveur where id=1 LOOP
id=liste[0];
END LOOP;
nid=addid (5,id);
update index_serveur set fin_client=nid where id=1;
npass= dpass ();
insert into client values (nid,npass,nom,mail,'I','0','',prenom);
return true;
end
$BODY$
LANGUAGE 'plpgsql' VOLATILE;
si tout ca est accepter par l editeur de requete pgqdmin3
je ne suis pas du tout sur que ca fonctionne et que la syntaxe est bonne
question 1
----------------
est qu'on peut faire des sous fonction en postgresql
question 2
---------------
comment tester ca dans pgadmin3
question 3
--------------------
peut on appeller une fonction plpython par une fonction plpgsql
question 4
---------------
j ai reussie a me connecter en php faire un insert ou un select
mais je ne trouve pas comment appeller la fonction en php
question 5
---------------
je tester les fonction en addid et dpass en php ca fonctionne
mais je pense que l execution sera plus rapide sur le serveur sql et plus facile pour les backup ,mais une confirmation de ca serai la bienvenu
un grand merci pour votre aide d'avance :D
willl