iis 7 - Database result is passed as null unless it's read -


  सेट rslistings = my_conn.Execute (strSQL) करें जबकि नहीं rslistings.Eof विवरण = पट्टी (rslistings ("description ")) Rslistings.MoveNext लूप   

पट्टी में - शून्य पारित किया जा रहा है हालांकि, अगर मैं डीबगर संलग्न करता हूं और rslistings ("description") की सामग्री का निरीक्षण करता हूं, तो वास्तविक फ़ील्ड ऑब्जेक्ट

के माध्यम से पारित हो जाता है यह काफी पुराना एस्प कोड है, लेकिन यह आईआईएस 6 पर काम करता है, बस IIS7 < / P>

संपादित करें यह केवल "विवरण" फ़ील्ड के साथ होता है एक पाठ प्रकार (MySQL डाटाबेस)

पट्टी बहुत कुछ नहीं करता:

  अगर नहीं है (पासिनवैल्यू) तो // कुछ और करें / कुछ करना   

अगर मैं पट्टी की तरह पट्टी (आरएस ("विवरण") कॉल करता हूँ) यह कभी भी रिक्त नहीं है क्योंकि फील्ड ऑब्जेक्ट को पारित किया जाता है। अगर मैं इसे किसी अन्य मान को सौंप देता हूं, तो उसे (जैसे स्ट्रिप (मैनेवेवर)) से गुजारें तो सही मान पारित हो जाता है।

Edit - Database bits जैसा कि नीचे अनुरोध किया गया

  सेट करें my_conn = server.CreateObject ("ADODB.Connection") सेट करें rs = Server.CreateObject ("ADODB.Recordset") my_conn.Open "DSN = mydb"   

एसक्यूएल

  सेट आरएस = my_conn.Execute ("तालिका से चयन विवरण")    

फ़ील्ड संग्रह रिकॉर्सेट वस्तु का डिफ़ॉल्ट सदस्य है।

ऐसा फ़ील्ड ऑब्जेक्ट के लिए मान की संपत्ति है।

तो निम्न दो कोड विवरण समकक्ष हैं । <पूर्व> डीबग.प्रंट objRs.Fields.Item (0) 'दोनों बयान प्रिंट डिबग। प्रिंट ओबजेआर (0)' मद का मूल्य (0)।

यह एक अंतर है यदि आप किसी वैरिएबल को मान निर्दिष्ट करते हैं या किसी फ़ंक्शन में पैरामीटर के रूप में इसका इस्तेमाल करते हैं।

Comments