| 1 |
<!-- |
|---|
| 2 |
$Header: /var/lib/cvs/pgsql-fr/sgml/features.sgml,v 1.6.2.1 2005/03/14 06:02:59 guillaume Exp $ |
|---|
| 3 |
--> |
|---|
| 4 |
|
|---|
| 5 |
<appendix id="features"> |
|---|
| 6 |
<title>Compatibilité SQL</title> |
|---|
| 7 |
|
|---|
| 8 |
<para> |
|---|
| 9 |
Cette section tente de mettre en évidence dans quelle mesure |
|---|
| 10 |
<productname>PostgreSQL</productname> est conforme au standard SQL. |
|---|
| 11 |
Décrire la compatibilité au standard ou la syntaxe complète est un exercice |
|---|
| 12 |
relativement compliqué et n'est pas particulièrement utile. |
|---|
| 13 |
Cette section ne donnera donc qu'un aperçu de cette compatibilité. |
|---|
| 14 |
</para> |
|---|
| 15 |
|
|---|
| 16 |
<para> |
|---|
| 17 |
Le nom complet du standard SQL est ISO/IEC 9075 <quote>Database Language |
|---|
| 18 |
SQL</quote>. Une version revue du standard est publiée de temps en temps dont |
|---|
| 19 |
la plus récente date de 1999. Cette version est référencée en temps que |
|---|
| 20 |
ISO/IEC 9075:1999, ou de manière informelle comme SQL99. La version précédente |
|---|
| 21 |
à celle-ci était la version SQL92. |
|---|
| 22 |
Le développement de <productname>PostgreSQL</productname> tend à se conformer |
|---|
| 23 |
à la dernière version officielle dans la mesure où celle-ci ne viendrait pas |
|---|
| 24 |
s'opposer aux fonctionnalités traditionnelles ou au bon sens. Au moment où |
|---|
| 25 |
nous écrivons ces lignes, une nouvelle révision du standard est sur le point |
|---|
| 26 |
d'être publiée. Celle-ci deviendrait, si elle est acceptée, le nouvel objectif |
|---|
| 27 |
de compatibilité pour les développements futurs de |
|---|
| 28 |
<productname>PostgreSQL</productname>. |
|---|
| 29 |
</para> |
|---|
| 30 |
|
|---|
| 31 |
<para> |
|---|
| 32 |
<acronym>SQL92</acronym> définit trois ensembles de fonctionnalité pour |
|---|
| 33 |
le test de compatibilité : |
|---|
| 34 |
base, intermédiaire, complète. La majorité des systèmes de gestion de bases |
|---|
| 35 |
de données se disant compatibles au standard <acronym>SQL</acronym> sont |
|---|
| 36 |
en général conformes au niveau des bases en vertu du fait que l'ensemble |
|---|
| 37 |
des fonctionnalités des niveaux intermédiaire et complet sont soit trop |
|---|
| 38 |
volumineux soit en conflit avec des comportements précédemment implantés. |
|---|
| 39 |
</para> |
|---|
| 40 |
|
|---|
| 41 |
<para> |
|---|
| 42 |
<acronym>SQL99</acronym> définit un vaste ensemble de fonctionnalités |
|---|
| 43 |
individuelles à la place des trois niveaux de fonctionnalités définis |
|---|
| 44 |
dans <acronym>SQL92</acronym> et dont l'efficacité est discutable. Une grande |
|---|
| 45 |
partie représente les fonctionnalités |
|---|
| 46 |
<quote>centrales</quote> que chaque implémentation de SQL doit fournir. Les |
|---|
| 47 |
fonctionnalités restantes sont purement optionnelles. Certaines de ces |
|---|
| 48 |
fonctionnalités optionnelles sont regroupées au sein de |
|---|
| 49 |
<quote>paquetages</quote>. Une implémentation peut ainsi se dire conforme à |
|---|
| 50 |
certains paquetages, se déclarant ainsi conforme à des groupes particuliers |
|---|
| 51 |
de fonctions. |
|---|
| 52 |
</para> |
|---|
| 53 |
|
|---|
| 54 |
<para> |
|---|
| 55 |
Le standard <acronym>SQL99</acronym> est également divisé en cinq |
|---|
| 56 |
parties : cadre de travail (Framework), fondations (Foundation), interface |
|---|
| 57 |
d'appel direct pour l'interrogation de la base (Call Level Interface), modules |
|---|
| 58 |
stockés persistants (Persistent Stored Modules) et liaisons vers des langages |
|---|
| 59 |
hôtes (Host Language Bindings). |
|---|
| 60 |
<productname>PostgreSQL</productname> ne couvre que les parties 1, 2 et 5. |
|---|
| 61 |
Le point 3 est similaire à l'interface ODBC et le point 4 est similaire au |
|---|
| 62 |
langage de programmation <application>PL/pgSQL</application>. Cependant, |
|---|
| 63 |
aucune mise en conformité n'est prévue dans l'un ou l'autre des deux cas. |
|---|
| 64 |
</para> |
|---|
| 65 |
|
|---|
| 66 |
<para> |
|---|
| 67 |
Dans les deux sections suivantes, nous fournissons une liste de ces |
|---|
| 68 |
fonctionnalités supportées par <productname>PostgreSQL</productname> suivies |
|---|
| 69 |
de la liste des fonctionnalités définies dans SQL99 qui ne sont pas encore |
|---|
| 70 |
prises en compte. Ces deux listes sont approximatives : certains détails |
|---|
| 71 |
mineurs peuvent ne pas être compatibles et certaines grandes parties d'une |
|---|
| 72 |
fonctionnalité non supportée peuvent avoir été implantées. Vous pourrez trouver |
|---|
| 73 |
des informations plus précises sur ce qui fonctionne ou ne fonctionne pas dans |
|---|
| 74 |
les différents chapitres principaux de la documentation. |
|---|
| 75 |
</para> |
|---|
| 76 |
|
|---|
| 77 |
<note> |
|---|
| 78 |
<para> |
|---|
| 79 |
Les codes de fonctionnalités contenant un tiret sont des sous-fonctionnalités. |
|---|
| 80 |
Le cas échéant, si une sous-fonction n'est pas supportée, la fonctionnalité |
|---|
| 81 |
de niveau supérieur sera définie comme non supportée même si d'autres |
|---|
| 82 |
sous-fonctions lui appartenant sont supportées. |
|---|
| 83 |
</para> |
|---|
| 84 |
</note> |
|---|
| 85 |
|
|---|
| 86 |
<sect1 id="features-sql99"> |
|---|
| 87 |
<title>Fonctionnalités supportées</title> |
|---|
| 88 |
|
|---|
| 89 |
<para> |
|---|
| 90 |
<informaltable> |
|---|
| 91 |
<tgroup cols="4"> |
|---|
| 92 |
<thead> |
|---|
| 93 |
<row> |
|---|
| 94 |
<entry>Identifiant</entry> |
|---|
| 95 |
<entry>Paquetage</entry> |
|---|
| 96 |
<entry>Description</entry> |
|---|
| 97 |
<entry>Commentaire</entry> |
|---|
| 98 |
</row> |
|---|
| 99 |
</thead> |
|---|
| 100 |
|
|---|
| 101 |
&features-supported; |
|---|
| 102 |
|
|---|
| 103 |
</tgroup> |
|---|
| 104 |
</informaltable> |
|---|
| 105 |
</para> |
|---|
| 106 |
</sect1> |
|---|
| 107 |
|
|---|
| 108 |
<sect1 id="unsupported-features-sql99"> |
|---|
| 109 |
<title>Fonctionnalités non supportées</title> |
|---|
| 110 |
|
|---|
| 111 |
<para> |
|---|
| 112 |
Les fonctionnalités suivantes définies dans <acronym>SQL99</acronym> ne sont |
|---|
| 113 |
pas implantées dans cette version de <productname>PostgreSQL</productname>. |
|---|
| 114 |
Dans certains cas, des fonctionnalités similaires sont disponibles. |
|---|
| 115 |
<informaltable> |
|---|
| 116 |
<tgroup cols="4"> |
|---|
| 117 |
<thead> |
|---|
| 118 |
<row> |
|---|
| 119 |
|
|---|
| 120 |
<entry>Identifiant</entry> |
|---|
| 121 |
<entry>Paquetage</entry> |
|---|
| 122 |
<entry>Description</entry> |
|---|
| 123 |
<entry>Commentaire</entry> |
|---|
| 124 |
</row> |
|---|
| 125 |
</thead> |
|---|
| 126 |
|
|---|
| 127 |
&features-unsupported; |
|---|
| 128 |
|
|---|
| 129 |
</tgroup> |
|---|
| 130 |
</informaltable> |
|---|
| 131 |
</para> |
|---|
| 132 |
</sect1> |
|---|
| 133 |
|
|---|
| 134 |
</appendix> |
|---|
| 135 |
|
|---|
| 136 |
<!-- Keep this comment at the end of the file |
|---|
| 137 |
Local variables: |
|---|
| 138 |
mode:sgml |
|---|
| 139 |
sgml-omittag:nil |
|---|
| 140 |
sgml-shorttag:t |
|---|
| 141 |
sgml-minimize-attributes:nil |
|---|
| 142 |
sgml-always-quote-attributes:t |
|---|
| 143 |
sgml-indent-step:1 |
|---|
| 144 |
sgml-indent-data:t |
|---|
| 145 |
sgml-parent-document:nil |
|---|
| 146 |
sgml-default-dtd-file:"./reference.ced" |
|---|
| 147 |
sgml-exposed-tags:nil |
|---|
| 148 |
sgml-local-catalogs:("/usr/lib/sgml/catalog") |
|---|
| 149 |
sgml-local-ecat-files:nil |
|---|
| 150 |
End: |
|---|
| 151 |
--> |
|---|