Beaucoup de connexion de base de données mise en commun des bibliothèques offrent la possibilité de tester leurs connexions SQL pour l'oisiveté. Par exemple, le JDBC mise en commun de la bibliothèque de c3p0 a une propriété appelée preferredTestQuery
, qui est exécuté sur la connexion à des intervalles configurés. De même, Apache Commons DBCP a validationQuery
.
De nombreux exemple de requêtes , j'ai vu sont pour MySQL et recommandons l'utilisation d' SELECT 1;
la valeur de la requête de test. Cependant, cette requête ne fonctionne pas sur certaines bases de données (par exemple, HSQLDB, pour qui SELECT 1
s'attend à un FROM
de la clause).
Est-il une base de données agnostique requête, de manière équivalente, efficace mais fonctionne pour toutes les bases de données SQL?
Edit:
Si il n'y a pas (ce qui semble être le cas), quelqu'un peut-il suggérer un ensemble de requêtes SQL qui va travailler pour divers fournisseurs de bases de données? Mon intention serait de déterminer par programme une déclaration que je peut utiliser en fonction de mon fournisseur de base de données de configuration.