संक्षिप्त उत्तर: नहीं.
लंबा उत्तर:
खैर, यह अभी भी नहीं है . लेकिन मैं यह समझाने की कोशिश करूंगा कि क्यों। आज तक, जब आप क्वेरी चलाते हैं, तो डीबी इंजन परिणाम सेट संरचना (कॉलम की संख्या, कॉलम नाम, डेटा प्रकार, आदि) से अवगत होने की मांग करता है कि क्वेरी वापस आ जाएगी। इसलिए, जब आप डीबी से डेटा पूछते हैं तो आपको परिणाम सेट की संरचना को परिभाषित करना होगा। इसके बारे में सोचें:क्या आपने कभी ऐसी क्वेरी चलाई है जिसमें आपको परिणाम सेट की संरचना पहले से नहीं पता होगी?
यह तब भी लागू होता है जब आप select *
. करते हैं , जो सिर्फ एक चीनी वाक्यविन्यास है। अंत में, वापसी संरचना "ऐसी तालिका में सभी कॉलम" है।
एक स्ट्रिंग को असेंबल करके, आप परिणाम सेट के लिए पूछने से पहले, अपनी इच्छित संरचना को गतिशील रूप से उत्पन्न करते हैं। इसलिए यह काम करता है।
अंत में, आपको पता होना चाहिए कि स्ट्रिंग को गतिशील रूप से असेंबल करना सैद्धांतिक रूप से और संभावित रूप से . कर सकता है (हालांकि संभावित नहीं है) आपको अनंत स्तंभों के साथ एक परिणाम सेट मिलता है। बेशक, यह संभव नहीं है और यह विफल हो जाएगा, लेकिन मुझे यकीन है कि आप इसके निहितार्थों को समझ गए होंगे।
अपडेट करें
मुझे यह मिला, जो उन कारणों को पुष्ट करता है कि यह काम क्यों नहीं करता।
यहां :
मैं यहां ढूंढता और जोड़ता रहूंगा।