2011-12-08 5 views
12

क्या क्वेरी बिल्डर (या इसके विपरीत) पर कच्चेQuery का उपयोग करने में उनके कोई फायदे हैं?rawQuery बनाम। डेटाबेस.query

क्या क्वेरी बिल्डर, उदाहरण के लिए, एसक्यूएल इंजेक्शन हमलों की रक्षा करता है (हालांकि वेब साइटों के साथ कोई समस्या नहीं है, एसक्यूएल इंजेक्शन + एक सामग्री प्रदाता एक मुद्दा हो सकता है)? या दूसरे की तुलना में तेज़ है?

मैं एसक्यूएल के साथ काफी खुश हूं (मुझे वैसे भी करने की ज़रूरत है) और इसलिए मैं कच्चेQuery (मैं स्रोत कोड को आसानी से पढ़ सकता हूं) के लिए जाना चाहता हूं, लेकिन मैं सोच रहा हूं कि क्या मुझे याद आ रही है ऐसा कुछ जो उपयोगी हो सकता है।

उत्तर

8

प्रदान की गई विधियों के माध्यम से एक प्रश्न बनाना निश्चित रूप से पसंद किया जाता है। न केवल यह एसक्यूएल इंजेक्शन से आपकी रक्षा करता है, यह आपके लिए क्वेरी भी बनाता है ताकि आप स्ट्रिंग कॉन्सटेनेशन के पूरे समूह से बच सकें जो क्वेरी स्ट्रिंग को कम पठनीय और अधिक त्रुटि प्रवण कर देगा। प्रदर्शन के अनुसार मुझे नहीं लगता कि इससे बहुत अंतर आता है।

+0

प्रदान किए गए तरीकों से क्या आप क्वेरी बिल्डर का मतलब रखते हैं? – Mirko

3

पठनीयता कच्चेQuery का एक लाभ है। कम से कम मेरे लिए।

जैसा कि आप जानते हैं, पेरेटो सिद्धांत डेवलपर के अनुसार कोड पढ़ने के 80% समय व्यतीत करते हैं। इसलिए पठनीयता एक बहुत मजबूत तर्क है।

हालांकि क्वेरीब्यूल्डर भी प्लेसहोल्डर (एसक्यूएल इंजेक्शन से बचाव) का उपयोग करने का तरीका प्रदान करता है।

उम्मीद है कि मदद करता है।

संबंधित मुद्दे