]> PostgreSQLFr - Technique http://drupal.postgresql.fr/?q=taxonomy/term/1/0 Article technique sur PostgreSQL fr Écrire et utiliser des fonctions retournant une valeur de type composite (ROWTYPE) http://drupal.postgresql.fr/?q=node/1726 <p><!-- Note de style:<br /> En ajoutant feuille de style CSS contenant:<br /> <style type="text/css"><br /> pre.sql, pre.result {<br /> margin:2em 4em; padding:0.7ex; line-height:1.4ex;<br /> }<br /> pre.sql, code.sql {<br /> color:#0022AA; background-color:#FFFFAA;<br /> }<br /> pre.result {<br /> color:yellow; background-color:#222288;<br /> }<br /> </style><br /> ou équivalent, on pourrait supprimer les attributs style="..."<br /> dans cette page.<br /> --></p> <p> Bien que nouvelle utilisatrice de PG, j'ai choisi de présenter un mini-article sur l'utilisation des ROWTYPE dans PL/pgSQL, car je crois qu'il pourrait être utile à beaucoup.</p> <p> Je n'ai hélas pas beaucoup de temps à y consacrer, mais je compte sur votre participation pour m'aider à le clarifier.</p> <p> En effet je n'ai rien trouvé de tel sur le web et j'ai dû passer du temps, pour "trouver le pot aux roses", c'est-à-dire une syntaxe correcte utilisable pour mon application (GPL) que je vous dévoilerai plus tard.</p> <p> Merci à Guillaume Lelarge pour son aide. Au-delà de partager son expérience, il s'est joint activement à mes réflexions et suggéré les solutions qui m'ont mise sur la bonne voie.</p> Wed, 27 Aug 2008 20:34:22 +0200 PostgreSQL et Ruby http://drupal.postgresql.fr/?q=node/1489 <h2>Extracteur de tables</h2> <p>Trouvé sur le site <a href="http://www.geekz.fr"> We are Geeks</a>, un extracteur de tables pour PostgreSQL.</p> <p>Il s'agit d'extraire d'une base de données les informations nécessaires à sa recréation.</p> <p>Tout est là&nbsp;: <a href="http://www.geekz.fr/Extracteur-de-tables-postgresql">Extracteur PG en ruby</a>.</p> Tue, 11 Dec 2007 08:37:23 +0100 Debian Sarge, PostgreSQL 8.1, XID Wraparound et Single User Mode http://drupal.postgresql.fr/?q=node/927 <p> J'utilise une distribution GNU/Linux Debian Sarge avec un backport officiel de PostgreSQL 8.1 sur un serveur de test. Tout fonctionnait à merveille jusqu'au jour où la connexion <tt>psql</tt> m'a été refusée. La justification de l'impossibilité de connexion était relative à un XID Wraparound, comprendre un rebouclage des identifiants de transactions, par suite de manque de vacuum full sur deux bases. Ayant déjà été confronté au <a href="http://www.postgresqlfr.org/?q=node/49" target="_blank">problème par le passé</a>, je me suis donc rué sur la procédure que j'avais tantôt décrite... </p> Fri, 29 Sep 2006 16:21:45 +0200 Réussir des petits gateaux en forme d'éléphant http://drupal.postgresql.fr/?q=node/585 <p> Plusieurs personnes ont demandé à connaître la recette des excellents gateaux en forme d'éléphant que ceux qui ont fréquenté le stand de l'association pendant le salon «&nbsp;Solutions Linux 2006&nbsp;» ont pu déguster.<br><br /> La voici ! </p> <p> Ces gateaux au beurre, originaires d'Alsace ont pour nom <b>BUTTERBREDELE</b>. </p> <p> Durée de préparation: 30 minutes environ<br><br /> Repos: 3 heures<br><br /> Cuisson: 10 minutes dans un four à 200° C<br> </p> Wed, 22 Feb 2006 09:33:06 +0100 Langages de procédure : type OUT et INOUT http://drupal.postgresql.fr/?q=node/483 <p>Attention, tous les exemples de cet article utilisent le langage PL/pgsql. Pour l'utiliser, vous devez l'intégrer à votre base. Cela se fait tout simplement avec cette commande&nbsp;:</p> <pre>createlang plpgsql metier</pre> <p>Je viens donc d'intégrer le langage de procédures plpgsql dans la base metier.</p> <p>Avant la version 8.1, PostgreSQL n'acceptait que des arguments en entrée dans la déclaration des fonctions (et quelque soit le langage de procédures utilisé). Pour renvoyer un résultat, il fallait passer par la « valeur de retour ». Malgré tout, il était possible de renvoyer plusieurs valeurs en utilisant un type composite. En fait, cela revenait à renvoyer une ligne de plusieurs colonnes d'une table « virtuelle ».</p> Wed, 21 Dec 2005 08:39:45 +0100 PostgreSQLFr.org change de serveur Web http://drupal.postgresql.fr/?q=node/474 <p>L'ancien serveur de PostgreSQLFr.org étant arrivé en fin de cycle de vie, <a href="http://www.dalibo.com" target="_blank">notre hébergeur</a> a migré le site et les services annexes de celui-ci sur une nouvelle machine. Elle est relativement performante, et la navigation dans le site s'en ressent.</p> <p>Voici les caractéristiques principales de la machine&nbsp;:</p> <ul> <li>HP Proliant DL360 (1U) <li>Bi-Xeon 3GHz <li>2Go de Ram <li>2 x 146G 10Krpms en Ultra SCSI 320 et en Raid 1 (Compaq Smart Array 64xx) </ul> </p> Sat, 10 Dec 2005 22:41:26 +0100 Utilisation des rôles dans PostgreSQL 8.1 http://drupal.postgresql.fr/?q=node/438 <p>Ce document est un rappel de l'utilisation des utilisateurs et groupes pour les versions antérieures à la 8.1 et une introduction aux rôles, concept remplaçant les utilisateurs/groupes à partir de PostgreSQL 8.1.</p> <p><!-- header --></p> <p>PostgreSQL 8.1 modifie la gestion des utilisateurs. Le concept des utilisateurs et des groupes est remplacé par un concept plus global&nbsp;: celui des <a href="http://traduc.postgresqlfr.org/pgsql-8.1.0-fr/user-manag.html">rôles</a>. Un rôle correspond à un utilisateur et/ou à un groupe. Un rôle a des droits et il peut être membre d'un ou plusieurs autres rôles.</p> Tue, 29 Nov 2005 23:16:11 +0100 Fiche mémoire sur PostgreSQL http://drupal.postgresql.fr/?q=node/368 <p>Peter Freitag vient de publier une fiche mémoire sur PostgreSQL dont voici la traduction. La version anglaise est disponible sur le <a href="http://www.petefreitag.com/cheatsheets/postgresql/">site de Peter Freitag</a>.</p> Mon, 10 Oct 2005 22:00:04 +0200 Points à vérifier en ce qui concerne les performances de PostgreSQL 8.0 http://drupal.postgresql.fr/?q=node/297 <p><i>Cet article est la traduction d'un billet posté par Josh Berkus et Joe Conway sur leur site, <a href="http://powerpostgresql.com">powerpostgresql.com</a>. D'autres documents devraient suivre...</i></p> <p>Voici un ensemble de règles de base pour votre serveur PostgreSQL<br /> 8.0. Beaucoup de ces règles sont basées sur des anecdoctes ou des<br /> tests pratiques&nbsp;; il y a encore beaucoup de travail à effectuer en<br /> ce qui concerne les performances des bases de données et nous essayons de<br /> les mettre en place avec OSDL. Néanmoins, ceci devrait vous permettre de<br /> commencer. Toutes les informations ci-dessous sont utiles. Ce document,<br /> du 12 janvier 2005, sera vraisemblablement mis à jour plus tard. Les<br /> indications sur les paramètrages ci-dessous sont préférées aux<br /> indications que j'ai pû donner sur General Bits.</p> Sat, 16 Jul 2005 14:15:40 +0200 Datamining avec PostgreSQL http://drupal.postgresql.fr/?q=node/170 <p>Robert Bernier, un des core Hackers de PostgreSQL vient de publier un article sur le datamining avec PostgreSQL sur le site de onlamp. Une bonne lecture ! <a href="http://www.onlamp.com/pub/a/onlamp/2005/03/03/pg_datamining.html">http://www.onlamp.com/pub/a/onlamp/2005/03/03/pg_datamining.html</a></p> Mon, 07 Mar 2005 20:28:03 +0100 Un postgresql.conf complètement commenté ! http://drupal.postgresql.fr/?q=node/143 <p>Josh Berkus et Joe Conway se sont lancés ce début d'année dans la rédaction d'un livre sur la dernière version de PostgreSQL. Sur<br /> <a href="http://www.powerpostgresql.com/" target="_blank">leur site</a>, une sorte de blog, ils viennent de poster un document plus qu'intéressant. Il s'agit d'un fichier postgresql.conf complètement commenté&nbsp;!</p> <p>Je vous engage donc à lire attentivement ce document qui présente pour chaque clé du postgresql.conf&nbsp;:<br></p> <ul> <li>son nom</li> <li>les valeurs possibles</li> <li>la valeur par défaut</li> <li>si la variable peut être définie à chaud ou à froid</li> <li>si un raccourci existe pour pg_ctl</li> <li>ce que la documentation officielle dit sur la variable</li> <li>le commentaire des deux auteurs, tout à fait précieux&nbsp;!</li> </ul> </p> Thu, 10 Feb 2005 09:32:19 +0100 Modéliser un arbre simplement dans PostgreSQL http://drupal.postgresql.fr/?q=node/142 <p> Bonjour,</p> <p>Parmis les problèmes récurrents auxquels on est confrontés lorsqu'on fait un schéma de données, il y a la modélisation des arbres.</p> <p>Il s'agit de bien conceptualiser une structure hiérarchique dans une base de données. Je vous propose une méthode éprouvée pour le faire simplement! (attention, ne pas confondre avec un graphe...). </p> <p> Deux méthodes "anciennes": <ul> <li><strong>id / parent_id:</strong> Tout d'abord, on trouve la méthode id / parent_id. C'est à dire qu'on boucle sur la même table, en ajoutant une colonne du même type que l'identifiant et en bouclant sur cette même colonne, avec un lien père / fils. <p>Il n'y a pas grand chose à dire sur cette méthode si ce n'est qu'elle montre un peu ses limites en matière de performances lorsqu'on a un arbre conséquent... De plus les mises à jour de l'arbre (suppression ou déplacement d'un noeud) sont assez hardues et nécessitent un code particulier.<br></li> <li><strong>nested loops</strong> (ou "boucles imbriquées): Il s'agit de modéliser un arbre en sachant à l'avance quelle sera la "largeur" de celui-ci. C'est à dire que pour un arbre donné, la racine ira de 1 à n, le premier fils de la racine, de 1 à m. Le second fils de la racine, de m+1 à n et ainsi dessuite pour les descendants. Je vous laisse le soin de découvrir cette méthode en lisant <a href="http://www.intelligententerprise.com/001020/celko.jhtml?_requestid=145525]" target="_blank">http://www.intelligententerprise.com/001020/celko.jhtml?_requestid=145525]</a></li> </ul> </p> Mon, 12 Jun 2006 09:12:54 +0200 Présentations des conférences PostgreSQL - Solutions Linux 2005 Paris http://drupal.postgresql.fr/?q=node/140 <p>Comme promis sur le stand PostgreSQLFr lors de Solutions Linux 2005, vous trouverez ci-après les liens qui vous permettront de télécharger les présentations des<br /> <a href="http://www.solutionslinux.fr/fr/conferences_detail.php?id_conference=26">différentes présentations afférentes aux bases de données</a> lors du salon Solutions Linux 2005 à Paris.</p> <p> <b>Tour d'horizon des bases de données "libres" :MySQL et MaxDB, PostgreSQL, Ingres, Firebird, SQLLite</b><br><br /> par Stéphane Schildknecht, responsable du pôle bases de données de Linagora.<br><br /> <a href="files/BDD_OS.pdf">Télécharger!</a> (PDF, 3,7 Mo)<br> </p> Wed, 16 Mar 2005 20:06:49 +0100 Réponse à l'article de Décision Informatique n°606 du 04/10/2004 http://drupal.postgresql.fr/?q=node/96 <p> Dans le n°606 du 4 octobre 2004 du journal Décision Informatique, est paru un comparatif de cinq systèmes de gestion de bases de données (SGBD): Microsoft SQL Server, Oracle, BD2, MySQL et PostgreSQL. Notre communauté a été contactée par le mandataire des tests, afin de l'aider à optimiser l'installation de PostgreSQL. Par contre, la communauté n'a jamais été sollicitée sur d'autres points et il en résulte un certain nombre d'erreurs, d'imprécisions et de confusions, qui auraient facilement pu être évitées. </p> <p> Nous souhaitons donc ici corriger ces problèmes et donner de PostgreSQL une image plus juste. </p> Wed, 17 Nov 2004 18:49:02 +0100 Autodoc : documentez vos bases de données facilement! http://drupal.postgresql.fr/?q=node/89 <p><a href="http://www.rbt.ca/autodoc/">Autodoc</a> permet de documenter de manière extrêmement simple et efficace une base de données.</p> <p>Sous Debian, l'installation est simple. Commencez par mettre à jour vos sources apt&nbsp;:</p> <pre>$ apt-get update</pre> <p>Vérifiez la disponibilité du paquet&nbsp;:</p> <pre>$ apt-cache search postgresql-autodoc<br /> postgresql-autodoc - Utility to create system tables overview in HTML, DOT and XML </pre> <p>Installez le paquet s'il est disponible&nbsp;:</p> <pre>$ apt-get install postgresql-autodoc</pre> <p>Pour les autres distributions, cherchez un peu... Ou alors, installez à partir des<br /> <a href="http://www.rbt.ca/autodoc/releasenotes.html">sources disponibles sur le site</a> ;-)</p> Sun, 28 Nov 2004 15:14:38 +0100