2010-05-05 3 views
20

Je recherche une requête DB2 simple qui peut être utilisée pour tester si une connexion de base de données dans le pool est toujours valide. Il doit s'agir d'une requête générique qui s'exécute indépendamment des bases de données existantes.Requête DB2 simple pour la validation de connexion

Pour les autres serveurs de bases de données, j'ai utilisé quelque chose comme 'SELECT 1' ou 'SELECT version();'

Qu'est-ce qui serait équivalent pour DB2?

Merci!

Répondre

22

Essayez values 1.

En outre, vous pouvez obtenir la date actuelle comme

VALUES current date 

ou

SELECT current date FROM sysibm.sysdummy1 

Vous pouvez également obtenir the version info as follows

SELECT service_level, fixpack_num, bld_level 
FROM TABLE (sysproc.env_get_inst_info()) as A; 
+1

Merci pour la réponse. Sélectionnez 1 renvoie: SYMBOLE ILLEGAL "". CERTAINS SYMBOLES QUI POURRAIENT ÊTRE LÉGAUX SONT: Code SQL: -104, état SQL: 42601 mais en ajoutant le (FROM sysibm.sysdummy1) fonctionne Merci beaucoup pour votre aide! –

+1

@Eric - les "valeurs 1" fonctionnent-elles? – DVK

+1

Tout d'abord, laissez-moi vous dire que je ne suis pas très familier avec DB2, donc j'ai peut-être modifié la syntaxe. J'ai essayé "valeurs 1", "SELECT valeurs 1" et "VALUES date actuelle" qui ont toutes retourné une erreur. Les deux dates "SELECT date actuelle FROM sysibm.sysdummy1" et "SELECT 1 FROM sysibm.sysdummy1" ont bien fonctionné. Tout cela se fait via JDBC en utilisant le pilote JCC sur un serveur basé sur zOS. –

Questions connexes