Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes15kdownloads
extend-how.html33 linesDownload Raw Back to html
1<?xml version="1.0" encoding="UTF-8" standalone="no"?>2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>38.1. How Extensibility Works</title><link rel="stylesheet" type="text/css" href="stylesheet.css" /><link rev="made" href="pgsql-docs@lists.postgresql.org" /><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot" /><link rel="prev" href="extend.html" title="Chapter 38. Extending SQL" /><link rel="next" href="extend-type-system.html" title="38.2. The PostgreSQL Type System" /></head><body id="docContent" class="container-fluid col-10"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="5" align="center">38.1. How Extensibility Works</th></tr><tr><td width="10%" align="left"><a accesskey="p" href="extend.html" title="Chapter 38. Extending SQL">Prev</a> </td><td width="10%" align="left"><a accesskey="u" href="extend.html" title="Chapter 38. Extending SQL">Up</a></td><th width="60%" align="center">Chapter 38. Extending <acronym class="acronym">SQL</acronym></th><td width="10%" align="right"><a accesskey="h" href="index.html" title="PostgreSQL 16.3 Documentation">Home</a></td><td width="10%" align="right"> <a accesskey="n" href="extend-type-system.html" title="38.2. The PostgreSQL Type System">Next</a></td></tr></table><hr /></div><div class="sect1" id="EXTEND-HOW"><div class="titlepage"><div><div><h2 class="title" style="clear: both">38.1. How Extensibility Works <a href="#EXTEND-HOW" class="id_link">#</a></h2></div></div></div><p>3    <span class="productname">PostgreSQL</span> is extensible because its operation  is4    catalog-driven.   If  you  are familiar with standard5    relational database systems, you know that  they  store  information6    about  databases,  tables,  columns,  etc., in what are7    commonly known as system catalogs.  (Some systems  call8    this  the data dictionary.)  The catalogs appear to the9    user as tables like any other, but  the  <acronym class="acronym">DBMS</acronym>  stores10    its  internal  bookkeeping in them.  One key difference11    between <span class="productname">PostgreSQL</span> and  standard  relational database systems  is12    that <span class="productname">PostgreSQL</span> stores much more information in its13    catalogs: not only information about tables and  columns,14    but also information about data types, functions, access15    methods, and so on.  These tables can be  modified  by16    the  user, and since <span class="productname">PostgreSQL</span> bases its operation17    on these tables, this means that <span class="productname">PostgreSQL</span> can  be18    extended   by   users.    By  comparison,  conventional19    database systems can only be extended by changing hardcoded20    procedures in the source code or by loading modules21    specially written by the <acronym class="acronym">DBMS</acronym> vendor.22   </p><p>23    The <span class="productname">PostgreSQL</span> server can moreover24    incorporate user-written code into itself through dynamic loading.25    That is, the user can specify an object code file (e.g., a shared26    library) that implements a new type or function, and27    <span class="productname">PostgreSQL</span> will load it as required.28    Code written in <acronym class="acronym">SQL</acronym> is even more trivial to add29    to the server.  This ability to modify its operation <span class="quote">“<span class="quote">on the30    fly</span>”</span> makes <span class="productname">PostgreSQL</span> uniquely31    suited for rapid prototyping of new applications and storage32    structures.33   </p></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="extend.html" title="Chapter 38. Extending SQL">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="extend.html" title="Chapter 38. Extending SQL">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="extend-type-system.html" title="38.2. The PostgreSQL Type System">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter 38. Extending <acronym class="acronym">SQL</acronym> </td><td width="20%" align="center"><a accesskey="h" href="index.html" title="PostgreSQL 16.3 Documentation">Home</a></td><td width="40%" align="right" valign="top"> 38.2. The <span class="productname">PostgreSQL</span> Type System</td></tr></table></div></body></html>
codekingpro/portable-devtools · Team Ai