]> Jean-Christophe Arnu's blog http://drupal.postgresql.fr/?q=blog/10 fr Prepared Statement et valeurs à Null http://drupal.postgresql.fr/?q=node/772 <p><b>Le problème</b><br /> Le problème est simple : lorsqu'on a, dans une condition, des valeurs pouvant être à null les PreparedStatement peuvent être problématiques car il n'existe pas d'opérateur = pour les valeurs à null dans PostgreSQL (enfin presque, voir plus bas) :</p> <p>Par exemple j'ai une requête du type :<br /> <p class="code"> SELECT * FROM ALARM WHERE timestamp = ? AND type = ? AND param = ? AND ackdate IS NOT NULL; </p> <p>type et param peuvent être à null. Si on place la valeur à null dans le code Source :<br /> <p class="code"> PreparedStatement stt = Connexion.prepareStatement("SELECT * FROM ALARM WHERE timestamp = ? AND type = ? AND param = ? AND ackdate IS NOT NULL;");<br /> stt.setNull(2,java.sql.Types.INTEGER);<br /> ... </p> Sun, 13 Jan 2008 09:41:53 +0100 Les règles et PostgreSQL, héritage, etc... http://drupal.postgresql.fr/?q=node/757 <p>Lors d'une discussion sur <a href="irc://irc.freenode.net/#postgresqlfr">#PostgreSQLFr</a>, nous avons tenté de nous attaquer aux <a href="http://docs.postgresqlfr.org/8.1/rules-views.html">règles</a> sur les SELECT. Si nous considérons les données d'entrée :<br /> <p class="code"> <font color="#a52a2a"><b>CREATE</b></font> <font color="#6a5acd">TABLE</font> table1<br /> &nbsp;&nbsp;&nbsp;id SERIAL <font color="#a52a2a"><b>NOT</b></font> <font color="#6a5acd">NULL</font> PRIMARY KEY, <font color="#0000ff">-- clé primaire de la relation</font><br /> &nbsp;&nbsp;&nbsp;<font color="#6a5acd">type</font> <font color="#2e8b57"><b>VARCHAR</b></font>(<font color="#ff00ff">100</font>) <font color="#a52a2a"><b>NOT</b></font> <font color="#6a5acd">NULL</font>, <font color="#0000ff">-- type de données</font><br /> &nbsp;&nbsp;&nbsp;data TEXT <font color="#0000ff">-- contenu</font><br /> ); </p> Thu, 13 Sep 2007 15:49:44 +0200