Avec SQL Server, je peux exécuter du code T-SQL code ad hoc avec une logique procédurale complète via SQL Server Management Studio ou tout autre client. J'ai commencé à travailler avec PostgreSQL et j'ai eu un peu de différence en ce sens que PGSQL nécessite l'intégration de toute logique dans une fonction.Comment puis-je exécuter un code pl/pgsql sans créer de fonction?
Existe-t-il un moyen d'exécuter du code PL/PGSQL sans créer une fonction?
Pour tous ceux qui ont trouvé cette réponse et l'ont essayé seulement pour obtenir" ERREUR: syntaxe erreur à ou près de "SELECT" ", vous avez besoin d'un BEGIN et END. DO $$ BEGIN/* pl/pgsql ici */END $$ –
Mais comment ce code peut-il renvoyer un résultat de requête? Si je mets un SELECT dans la partie pl/pgsql, j'obtiens ERROR: la requête n'a pas de destination pour les données du résultat. – isapir
@Igal: Cela ne peut pas. Vous ne pouvez rien retourner d'une instruction 'DO'. Vous pouvez générer des notifications ou écrire sur une table temporaire ou ouvrir un curseur en tant que solutions de contournement possibles. –