SORU
26 Kasım 2008, ÇARŞAMBA


Select *kullanmak için değil sebebi nedir?

Çok sayıda insan özellikle istediğiniz her sütun adı gerekir iddia seçin sorgunuza gördüm.

Tüm sütunlar zaten kullanacağım varsayarak, neden SELECT * kullanmalıyım?

Soruyu bile düşünüyor *SQL query - Select * from view or Select col1, col2, … colN from view*bu tam olarak biraz daha farklı bir perspektiften yaklaşıyorum olarak yinelenen olduğunu sanmıyorum.

İlkelerimiz bir süre önce optimize etmek için değil. Bunu unutmayın, SELECT * olmalıdır kullanmak gibi görünüyortercih ettibir kaynak sorunu ya da şema olamayacağı kadar yöntem hemen hemen hiç olmaz. Bildiğimiz gibi, gelişimi tamamen bitene kadar ortaya olmaz.

O dedi, orada SELECT * kullanmak için öncelikli bir konudur?

CEVAP
26 Kasım 2008, ÇARŞAMBA


Özünü basit ve anlaşılır kod gitmektirsonrabir profiler sonra verimli olması için optimize edebilirsiniz hangi sıcak noktalar, göstermek için kullanın.

İmkansız tercihi yapmak için sen seç * kullandığınızda, bu nedenle net ve basit bir kod yazıyorsun ve teklif ruhuna aykırı olacak. select * anti-pattern.


Seçme sütunlar erken bir optimizasyon değildir. Birkaç şey kafamın üst kapalı....

  1. Bir SQL deyimi sütun belirtirseniz, SQL yürütme motoru ise bu sütun tablodan kaldırılırsa hata ve sorgu çalıştırılır.
  2. Bu sütun kullanıldığı daha kolay kod tarama yapabilirsiniz.
  3. Bilgi her zaman en az miktarda geri getirmek için sorgular yazmak gerekir.
  4. Diğerleri ise sütun sıralı erişim kullanıyorsanız söz olarak asla select * kullanmalısınız
  5. Eğer SQL deyim tablo katılırsa, select * birleştirme hepiniz tablodan tüm sütunları verir

Sonuç select * ... kullanarak

  1. Sütunlar uygulama tarafından kullanılan opak
  2. DBA ve sorgu profilciler uygulamanızın düşük performans yardım edemiyoruz
  3. Kod değişiklik olduğunda daha kırılgan
  4. Veritabanı ve ağ çok fazla veri (g/Ç) geri getirmek onlar için acı çekiyorlar
  5. Veritabanı motoru optimizasyon tüm veri ne olursa olsun geri getiriyorsun (mantıksal) olarak en az.

Doğru SQL yazma Select * yazmak kadar kolaydır. Gerçek tembel kodu bir geri dönüş yaptılar ne zaman ne yaptıklarını hatırlamak istemiyorum çünkü uygun SQL yazıyor. Kod her bit hakkında DBA açıklamak istemiyorlar. Uygulama bir köpek gibi çalışır neden müşterilerine açıklamak istemiyorlar.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Caramthros

    Caramthros

    10 AĞUSTOS 2007
  • dope2111

    dope2111

    29 HAZİRAN 2009
  • hitcreatormusic2

    hitcreatormu

    21 Mayıs 2010