mysql - SQL Query breaking for some reason -
कृपया निम्न छवि पर विचार करें:
जब मैंने निम्न प्रश्न coldfusion में चलाया:
& lt; cfquery datasource =" mydb "नाम =" qCoulmnInsert "& gt; अनोखा ओपन --- & gt; अनन्य_वेब मेमेल_इन, अनूठा_टेबलटी_आईंट, अनूठा_अभियान, अद्वितीय_फोन_इन, अनूठा_डेस्कटॉप_ंट, & lt; --- तारीखों के लिए - सरल ओपेरा_उपलब्धताएं- open_desktop_int, open_other_int, open_phone_int, open_tablet_int, open_webmail_int, & lt;! - & gt; प्रारंभआती_dt, समाप्ति दिनांक, दिनांक_आइटी) मूल्यों & lt;! --- अपने सरणी के माध्यम से --- & gt; & Lt; cfloop = "1" से = "# सरणीलेन (cfData) #" सूचकांक = "आई" & gt; (& Lt; cfif structkeyeyxists (cfdata [i], "open") & gt; & lt; cfqueryparam cfsQLTYPE = "CF_SQL_INTEGER" मान = "# cfData [i] .open.Desktop #" & gt; & lt; cfelse & gt; NULL & lt; / cfif & gt ; & Lt; cfif structkeyeyxists (cfdata [i], "open") & gt; & lt; cfqueryparam cfsQLTYPE = "CF_SQL_INTEGER" मान = "# cfData [i] .open.Other #" & gt; & lt; cfelse & gt; NULL & lt; / Cfif & gt;, & lt; cfif structKeyExists (cfData [i], "ओपन") & gt; & lt; cfqueryparam CFSQLTYPE = "CF_SQL_INTEGER" मान = "# cfData [i] .open.Phone #" & gt; & lt; cfelse & gt; NULL & lt; / Cfif & gt ;, और इसी तरह आगे और आगे ... ....
मुझे निम्न त्रुटि मिलती है:
तत्व खुली। डेस्कटॉप की अभिव्यक्ति के हिस्से के रूप में संदर्भित एक सीएफएमएल संरचना में अनिर्धारित है। सी: \ myfile.cfm: पंक्ति 55 53: (54: & lt; cfif structkeyeyxists (cfdata [i], "open") & gt; 55: & lt; cfqueryparam CFSQLTYPE = "CF_SQL_INTEGER" मान = "# cfData [i] .open.Desktop #" & gt; 56: & lt; cfelse & gt; 57: NULL
मुझे पता है कि यह कुछ संरचनाओं के लिए परिभाषित नहीं है जैसा कि नीचे दी गई छवि में दिखाया गया है, लेकिन मैंने अपने & lt; cfelse & gt;
कथन में "NULL" को शामिल किया है उन मामलों को संभालने के लिए क्या मुझसे यहां कुछ गलत हो रहा है? कृपया सलाह दें।
हालांकि, क्वेरी की अवधि सीमा के लिए ठीक चलती है जहां OPEN 's परिभाषित होते हैं।
सही तरीका:
& Lt; cfif structkeyeyxists (cfdata [i], "open") & gt; & Lt; cfif structKeyExists (सीएफडीटा [आई]। ओपन, "डेस्कटॉप") & gt; & Lt; cfqueryparam CFSQLTYPE = "CF_SQL_INTEGER" मान = "# सीएफडीटा [आई] [" ओपन "] [" डेस्कटॉप "] #" & gt; & LT; cfelse & gt; NULL & lt; / cfif & gt; & LT; cfelse & gt; NULL & lt; / cfif & gt; आप "if" कथन योग्य है कि "खुले" आपके कथन में उपलब्ध है, लेकिन "डेस्कटॉप"
"हमेशा उपलब्ध नहीं है और एक योग्यता बयान में लिपटे नहीं है यदि दूसरे शब्दों में, "डेस्कटॉप" हमेशा एक कुंजी नहीं है, लेकिन आपके लूप हमेशा इसके लिए "खुले" कुंजी परिभाषित की जाती है।
Comments
Post a Comment