2012-01-18 6 views
6

पैरामीटर के साथ क्वेरी के माध्यम से कुछ वर्ण डालने का प्रयास करते समय मुझे कोई समस्या है।कुछ यूनिकोड वर्णों को सम्मिलित करते समय पैरामीटरेटेड क्वेरी विफल हो जाती है

जब मैं निम्न क्वेरी चलाता हूं (कोई पैरामीटर शामिल नहीं होता है), सब कुछ ठीक काम करता है।

string insertQuery = "insert into 'testschema'.texttypestestobject(columnshortstring,columnlongstring)values('¬','test')"; 
DB2Command myCommand = new DB2Command(insertQuery, conn); 
myCommand.ExecuteNonQuery(); 

हालांकि, यदि मैं निम्न की तरह क्वेरी चलाता हूं, तो यह विफल हो जाता है।

string insertQuery = "insert into 'testschema'.texttypestestobject(columnshortstring,columnlongstring)values(@p0,@p1')"; 
DB2Command myCommand = new DB2Command(insertQuery, conn); 
myCommand.Parameters.Add(new DB2Parameter("@p0", "¬")); 
myCommand.Parameters.Add(new DB2Parameter("@p1", "test")); 
myCommand.ExecuteNonQuery(); 

त्रुटि है:

Executing Sql 'insert into 'testschema'.texttypestestobject(columnshortstring,columnlongstring)values(@p0,@p1)' 
with parameters '{¬},{ test}' exception 'IBM.Data.DB2.DB2Exception (0x80004005): 
ERROR [IX000] [IBM][IDS/NT64] Code-set conversion function failed due to illegal 
sequence or invalid value. 

इन्फोर्मिक्स सर्वर 11.70 (64 बिट) और ग्राहक एसडीके 3.50 स्थापित किया गया है, और ठीक से काम कर। डेटाबेस en_US.utf8 या cs_CZ.8859-2 के साथ बनाया गया है।

विफल होने वाले पात्रों में से एक '¬' (यूनिकोड 172) है।

क्या किसी ने यह त्रुटि देखी है? क्या कारण हो सकता है? क्या ड्राइवर पर कुछ अतिरिक्त कॉन्फ़िगरेशन करने की आवश्यकता है?

उत्तर

3

मुझे आईबीएम डेवलपर मंच से प्रतिक्रिया मिली। यह एक बग था जो नवीनतम फिक्स पैक के साथ तय किया गया था।

यह या तो ठीक पैक को स्थापित करने या चर DB2CODEPAGE वातावरण की स्थापना करके हल किया जा सकता = 1208

https://www.ibm.com/developerworks/forums/thread.jspa?messageID=14779728&#14779728

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