Salut
Habitué à SQL Server, je découvre PostgreSQL et je rencontre des problèmes.
J'ai l'habitude, sous SQL Server, de faire des procédures stockées pour accéder à mes données. C'est à dire que depuis mon programme (ASP.NET), j'appelle la procédure stockée et ce qui concerne le SQL est fait dans la procédure (séparation du code).
Ayant lu que PostgreSQL supporte les procédures stockées, j'essaye de faire de même (interface Java), et je n'y arrive pas. J'arrive à créer des fonctions qui me renvoient une valeur, mais je n'arrive pas à renvoyer le résultat d'une requète.
Prenons l'exemple suivant :
table TOTO
id champ
1 coucou
2 au revoir
la procédure SQL Server
CREATE PROCEDURE cherche_texte
@id integer
AS
SELECT
CHAMP
FROM
TOTO
WHERE
ID = @id
En PostgreSQL çà donne
CREATE OR REPLACE function cherche_texte(int) RETURNS varchar AS '
BEGIN
SELECT
CHAMP
FROM
TOTO
WHERE
ID = $1;
END;
'
LANGUAGE 'plpgsql';
Ceci fonctionne.
Je n'arrive pas à faire l'équivalent de la procédure suivante :
CREATE PROCEDURE tout_toto
AS
SELECT
*
FROM
TOTO
...
En fait je n'arrive pas à trouver quel doit être le type de retour.
Est ce faisable?
Je vais quand même pas être obligé de mettre la requète en dur dans le code java?
Merci
Eric
Partager