PostgreSQLLa base de données la plus sophistiquée au monde.
Documentation PostgreSQL 13.18 » Programmation serveur » Étendre SQL

Chapitre 37. Étendre SQL

Table des matières

37.1. L'extensibilité
37.2. Le système des types de PostgreSQL
37.2.1. Les types de base
37.2.2. Les types conteneurs
37.2.3. Les domaines
37.2.4. Pseudo-types
37.2.5. Types et fonctions polymorphes
37.3. Fonctions utilisateur
37.4. Procédures utilisateur
37.5. Fonctions en langage de requêtes (SQL)
37.5.1. Arguments pour les fonctions SQL
37.5.2. Fonctions SQL sur les types de base
37.5.3. Fonctions SQL sur les types composites
37.5.4. Fonctions SQL avec des paramètres en sortie
37.5.5. Fonctions SQL avec un nombre variables d'arguments
37.5.6. Fonctions SQL avec des valeurs par défaut pour les arguments
37.5.7. Fonctions SQL comme sources de table
37.5.8. Fonctions SQL renvoyant un ensemble
37.5.9. Fonctions SQL renvoyant TABLE
37.5.10. Fonctions SQL polymorphes
37.5.11. Fonctions SQL et collationnement
37.6. Surcharge des fonctions
37.7. Catégories de volatilité des fonctions
37.8. Fonctions en langage de procédures
37.9. Fonctions internes
37.10. Fonctions en langage C
37.10.1. Chargement dynamique
37.10.2. Types de base dans les fonctions en langage C
37.10.3. Conventions d'appel de la version 1
37.10.4. Écriture du code
37.10.5. Compiler et lier des fonctions chargées dynamiquement
37.10.6. Arguments de type composite
37.10.7. Renvoi de lignes (types composites)
37.10.8. Renvoi d'ensembles
37.10.9. Arguments polymorphes et types renvoyés
37.10.10. Mémoire partagée et LWLocks
37.10.11. Coder des extensions en C++
37.11. Informations d'optimisation de fonction
37.12. Agrégats utilisateur
37.12.1. Mode d'agrégat en déplacement
37.12.2. Agrégats polymorphiques et variadiques
37.12.3. Agrégats d'ensemble trié
37.12.4. Agrégation partielle
37.12.5. Fonctions de support pour les agrégats
37.13. Types utilisateur
37.13.1. Considérations sur les TOAST
37.14. Opérateurs définis par l'utilisateur
37.15. Informations sur l'optimisation d'un opérateur
37.15.1. COMMUTATOR
37.15.2. NEGATOR
37.15.3. RESTRICT
37.15.4. JOIN
37.15.5. HASHES
37.15.6. MERGES
37.16. Interfacer des extensions d'index
37.16.1. Méthodes d'indexation et classes d'opérateurs
37.16.2. Stratégies des méthode d'indexation
37.16.3. Routines d'appui des méthodes d'indexation
37.16.4. Exemple
37.16.5. Classes et familles d'opérateur
37.16.6. Dépendances du système pour les classes d'opérateur
37.16.7. Opérateurs de tri
37.16.8. Caractéristiques spéciales des classes d'opérateur
37.17. Empaqueter des objets dans une extension
37.17.1. Fichiers des extensions
37.17.2. Possibilités concernant le déplacement des extensions
37.17.3. Tables de configuration des extensions
37.17.4. Mise à jour d'extension
37.17.5. Installer des extensions en utilisant des scripts de mise à jour
37.17.6. Considérations de sécurité pour les extensions
37.17.7. Exemples d'extensions
37.18. Outils de construction d'extension

Les sections qui suivent présentent les possibilités d'étendre le langage SQL de requêtage de PostgreSQL par l'ajout :