SORU
15 EKİM 2008, ÇARŞAMBA


Neden Oracle 9i BOŞ olarak boş bir dize davranıyor?

Bunu ben de biliyorumyokNULL ama bana o kadar çok şey söylemek için bir şey yapmaz. '' düşünün ^em>nedenbu böyledir. SQL Özellikleri, '' NULL -- Aynı değil geçerli bir veri, diğeri de aynı bilgi olmadığına işaret ediyor. anladığım kadarıyla

Spekülasyon yapmak için çekinmeyin, ama lütfen, eğer durum buysa gösteriyor. Eğer bunun hakkında bilgisi olan Oracle kimsenin varsa, bu harika olurdu!

CEVAP
15 EKİM 2008, ÇARŞAMBA


Cevap Oracle çok çok yaşlı olduğunu düşünüyorum.

Arkadaki eski günler önce oradaydı bir standart SQL, Oracle yapılan tasarım kararı bu boş dizeleri VARCHAR/VARCHAR2 yazılarım oldu NULL ve bu sadece bir tane mantıklı NULL (ilişkisel teorisyenleri bu ayrım arasında veri olduğunu asla istendiğinde, veri nerede cevabı var ama değil bilinen kullanıcı, veri yeri yok cevap, vb. NULL duygusu) oluşturmaktadır.

SQL standart geldi ve NULL ve boş dize ayrı bir varlık olduğunu kabul etti o zaman, zaten iki eşdeğer sanmıştım kod vardı Oracle kullanıcıları vardı. Oracle temelde varolan kodu kırma, SQL standart ihlal veya sorgu işlevi, potansiyel olarak çok sayıda değiştirecek başlatma parametresi çeşit tanıtan seçenekleri ile kaldı. SQL standardı (IMHO) ihlal edilmiştir, bu üç seçenekten az yıkıcı.

Oracle var sol açık olasılığı VARCHAR veri türünü değiştirir bir sonraki sürüm için uygun bir SQL standart (bu yüzden herkes kullanır VARCHAR2 Oracle beri bu veri türü bir davranıştır garantili kalır, aynı ileri doğru gidiyor).

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Chriselle Lim

    Chriselle Li

    26 Ocak 2008
  • Leigh Momii

    Leigh Momii

    10 Mayıs 2006
  • Tracy Hairston

    Tracy Hairst

    22 Mayıs 2009