PostgreSQL
La base de données la plus sophistiquée au monde.

Ouverture de session

Navigation

Contactez-nous

Administration du site :
"equipe chez postgresqlfr point org"

Contact presse :
"fr chez postgresql point org"

Contact association :
"bureau chez postgresqlfr point org"

Questions PostgreSQL :
 IRC :
  serveur irc.freenode.net
  canal #postgresqlfr

Recherche

Accéder aux archives

« Octobre 2008  
Lun Mar Mer Jeu Ven Sam Dim
  2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31  

Syndication

Flux XML

Sondage

Quelle est la version de PostgreSQL la plus répandue sur vos serveurs ?
8.3
10%
8.2
42%
8.1
40%
8.0
2%
7.4
6%
7.3 ou antérieure
0%
Nombre de votes: 48

Le blogue de Jean-Christophe Arnu

| Prepared Statement et valeurs à Null

Par Jean-Christophe Arnu le 19/06/2006 - 16:55

Le problème
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) :

Par exemple j'ai une requête du type :

SELECT * FROM ALARM WHERE timestamp = ? AND type = ? AND param = ? AND ackdate IS NOT NULL;

type et param peuvent être à null. Si on place la valeur à null dans le code Source :

PreparedStatement stt = Connexion.prepareStatement("SELECT * FROM ALARM WHERE timestamp = ? AND type = ? AND param = ? AND ackdate IS NOT NULL;");
stt.setNull(2,java.sql.Types.INTEGER);
...

| Les règles et PostgreSQL, héritage, etc...

Par Jean-Christophe Arnu le 09/06/2006 - 15:51

Lors d'une discussion sur #PostgreSQLFr, nous avons tenté de nous attaquer aux règles sur les SELECT. Si nous considérons les données d'entrée :

CREATE TABLE table1
   id SERIAL NOT NULL PRIMARY KEY, -- clé primaire de la relation
   type VARCHAR(100) NOT NULL, -- type de données
   data TEXT -- contenu
);

Flux XML

© PostgreSQLFr, tous droits réservés.
Site déclaré à la CNIL sous le numéro 1074678, conformément à la Loi en vigueur.