SORU
8 EYLÜL 2010, ÇARŞAMBA


Tüm arasında çalışacak verimli SQL sorgu sınama veya doğrulama sorgu (veya en) veritabanları

Birçok veritabanı bağlantısı kitaplıkları havuzu tembellik için SQL bağlantılarını test olanağı sağlar. Örneğin, c3p0 bir özelliği vardır BULUNMAKTAYDI havuzu kütüphane yapılandırılmış aralıklarla bağlantı idam alır preferredTestQuery denir. Benzer şekilde, Apache Commons DBCP validationQuery vardır.

Gördüğüm birçok 18* queries *MySQL ve tavsiye için test sorgu için değer olarak SELECT 1; kullanıyor. Ancak, bu sorgu, bazı veritabanları (SELECT 1 FROM maddesi bekler örneğin HSQLDB,) çalışmıyor.

Bu veritabanı-agnostik benzer şekilde verimli ama herkes için çalışacak bir SQL sorgu veritabanları var mı?

Düzenleme:

Eğer durum böyle görünüyor) eğer değilse, birileri çeşitli veritabanı sağlayıcıları için SQL sorguları bir dizi önerir misiniz? Amacım Program aracılığıyla veritabanı sağlayıcısı benim yapılandırmasına bağlı olarak kullanabileceğim bir açıklama belirlemek için olurdu.

CEVAP
8 EYLÜL 2010, ÇARŞAMBA


Cevapları buradan yardım ile birlikte araştırma biraz sonra

SELECT 1

  • H2
  • MySQL
  • Microsoft Server (20* *göre) SQL
  • PostgreSQL
  • SQLite
SELECT 1 FROM DUAL

  • Oracle
SELECT 1 FROM any_existing_table WHERE 1=0

ya

SELECT 1 FROM INFORMATION_SCHEMA.SYSTEM_USERS

  • HSQLDB (sürüm 1.8.0.10 ile test edildi)

    Not: denedim kullanarak bir WHERE 1=0 fıkra ikinci sorgu, ama işe yaramadı gibi bir değer için Apache Commons DBCP validationQuery beri sorgu gelmez geri herhangi bir satır


VALUES 1 SELECT 1 FROM SYSIBM.SYSDUMMY1

SELECT 1 FROM SYSIBM.SYSDUMMY1

  • DB2

select count(*) from systables

  • Informix

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Klemens Torggler

    Klemens Torg

    11 Mart 2008
  • pendrop gaming

    pendrop gami

    4 ŞUBAT 2013
  • pjtoohot

    pjtoohot

    15 NİSAN 2008