Category “PostgreSQLFr” — 5 articles



La conférence européenne à Amsterdam était un très bon évènement de la communauté, avec une organisation impeccable dans un hôtel accueillant. J’ai eu le plaisir d’y parler des extensions et de leur usage dans le cadre du développement applicatif « interne », sous le titre Extensions are good for business logic. L’idée de ma présentation, que la plupart d’entre vous a loupé je suppose (en tout cas je n’avais qu’une petite poignée de français dans la salle, et j’espère avoir des lecteurs qui n’étaient pas à Amsterdam), l’idée est d’utiliser les mécanismes offerts par les extensions afin de maintenir le code PL que vous utilisez en production.


PostgreSQL 9.1 est dans les bacs ! Vous n’avez pas encore cette nouvelle version en production ? Pas encore évalué pourquoi vous devriez envisager de migrer à cette version ? Il existe beaucoup de bonnes raisons de passer à cette version, et peu de pièges. Nous commençons à lire des articles qui reprennent la nouvelle dans la presse française, et j’ai le plaisir de mentionner celui de programmez.com qui annonce « un système d’extensions inégalé ».


Nous avons parlé la dernière fois les règles d' échappement de chaînes avec PostgreSQL, et mentionné qu’utiliser ces techniques afin de protéger les données insérées dans les requêtes SQL n’était pas une bonne idée dans la mesure où PostgreSQL offre une fonctionnalité bien plus adaptée. Nous faisons face ici à un problème de sécurité très bien décrit dans le billet humoristique de Little Boby Tables, dont je vous recommande la lecture.


Parmis les nouveautés de la prochaine version de PostgreSQL, la fameuse 9.1, il faut signaler le changement de valeur par défaut de la variable standard_conforming_strings, qui passe à vraie. En effet, l’utilisation d’échappements avec le caractère « anti-slash » n’est pas conforme au standard SQL. Le paramètre standard_conforming_strings permet de contrôler le comportement de PostgreSQL lorsqu’il lit une chaîne de caractère dans une requête SQL. Voyons quelques exemples : dimitri=# set standard_conforming_strings to true; SET dimitri=# select 'hop'''; ?

Dimitri Fontaine

PostgreSQL Major Contributor

Open Source Software Engineer

France