2016-02-17 7 views
8

यह ColdFusion 11 में क्रैश नहीं होता है, लेकिन ColdFusion में दुर्घटना करता है 2016cfquery दुर्घटनाओं जब वहाँ TSQL टिप्पणी

SELECT * 
FROM dbo.Roles WITH (NOLOCK) 
WHERE Code IS NOT NULL 
AND  Active = 1 
AND  RoleID IN (SELECT RoleID FROM dbo.Emp WITH (NOLOCK)) -- It's ok to look at termed employees 

enter image description here

यह दोनों

SELECT * 
FROM dbo.Roles WITH (NOLOCK) 
WHERE Code IS NOT NULL 
AND  Active = 1 
AND  RoleID IN (SELECT RoleID FROM dbo.Emp WITH (NOLOCK)) 

में ठीक काम करता है वहाँ है मूल व्यवहार बहाल करने के लिए एक सेटिंग?

अद्यतन

मैंने सोचा कि मैं इस मुद्दे का एक न्यूनतम उदाहरण था, लेकिन मैंने ऐसा नहीं किया। मैं:

spy(http-nio-8500-exec-5)(2016/02/17 10:21:13.807)>> OK 

spy(http-nio-8500-exec-5)(2016/02/17 10:21:13.807)>> Statement[4].execute(String sql, int autoGeneratedKeys) 
spy(http-nio-8500-exec-5)(2016/02/17 10:21:13.807)>> sql = SELECT '<ul>' + STUFF ((SELECT MIN(Role) AS "li/code", Code AS "li/span/b", 'Unsorted' AS "li/span/var" FROM dbo.Roles WITH (NOLOCK) WHERE Code IS NOT NULL AND Active = 1 AND RoleID IN (SELECT RoleID FROM dbo.Emp WITH (NOLOCK)) -- It's ok to look at termed employees GROUP BY Code FOR XML PATH ('')), 1,0,'') + '</ul>' AS xmlRole 
spy(http-nio-8500-exec-5)(2016/02/17 10:21:13.807)>> autoGeneratedKeys = 1 
spy(http-nio-8500-exec-5)(2016/02/17 10:21:13.807)>>  
java.sql.SQLException: [Macromedia][SQLServer JDBC Driver][SQLServer]Incorrect syntax near ')'. ErrorCode=102 SQLState=HY000 
java.sql.SQLException: [Macromedia][SQLServer JDBC Driver][SQLServer]Incorrect syntax near ')'. 
    at macromedia.jdbc.sqlserverbase.ddcw.b(Unknown Source) 
    at macromedia.jdbc.sqlserverbase.ddcw.a(Unknown Source) 

ध्यान दें कि SQL स्ट्रिंग एक पंक्ति पर है यहाँ पूरा क्वेरी

SELECT '<ul>' + STUFF (
     (
     SELECT MIN(Role) AS "li/code", Code AS "li/span/b", 'Unsorted' AS "li/span/var" 
     FROM dbo.Roles WITH (NOLOCK) 
     WHERE Code IS NOT NULL 
     AND  Active = 1 
     AND  RoleID IN (SELECT RoleID FROM dbo.Emp WITH (NOLOCK)) -- It's ok to look at termed employees 
     GROUP BY Code 
     FOR XML PATH ('') 
     ), 
     1,0,'' 

    ) + '</ul>' AS xmlRole 

जब मैं डीबी डीबग किया जाना चालू है। जब टिप्पणी शुरू होती है, तो यह खत्म नहीं होती है। -- के बाद सबकुछ एक टिप्पणी के रूप में बनी हुई है।

व्हाइट स्पेस प्रबंधन चालू है। इसे बंद करना व्यवहार को बदलता नहीं है। उत्पन्न एसक्यूएल करने के लिए Adobe अनुसार ही

+4

एक कोल्डफ्यूजन के बारे में मेरी सबसे कम पसंदीदा चीजों में से - जब आप अपग्रेड करते हैं, तो काम करने के लिए उपयोग की जाने वाली चीजें तोड़ने लगती हैं। –

+0

* कोल्डफ्यूसॉइन 10.5 * कोल्डफ्यूजन 10.5.1 –

+0

मुझे यकीन है कि CF8 से CF9 में अपग्रेड करते समय ऐसा कोई समस्या थी। इसे हल करने में व्यवस्थापक में सफेद अंतरिक्ष प्रबंधन को बंद करना शामिल था। यदि आप सफेद अंतरिक्ष प्रबंधन बंद करते हैं तो क्या यह कुछ भी बदलता है? किसी भी तरह से, एक बग defo। – haxtbh

उत्तर

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