การแก้ไข: ข้อยกเว้นของ System.InvalidCastException อาจเกิดขึ้นเมื่อคุณเรียกใช้เมธอด OdbcConnection.GetSchema ใน.NET Framework 2.0

การแปลบทความ การแปลบทความ
หมายเลขบทความ (Article ID): 922981 - ผลิตภัณฑ์ที่เกี่ยวข้องในบทความนี้
ขยายทั้งหมด | ยุบทั้งหมด

เนื้อหาบนหน้านี้

อาการ

เมื่อคุณเรียกใช้การOdbcConnection.GetSchemaวิธีการในกรอบงาน Microsoft .NET 2.0 ข้อยกเว้นของ System.InvalidCastException อาจเกิดขึ้น ปัญหานี้อาจเกิดขึ้นหากมีเงื่อนไขต่อไปนี้::
  • คุณเรียกใช้การOdbcConnection.GetSchemaวิธี โดยใช้ตัวDataTypesค่าพารามิเตอร์
  • คุณใช้โปรแกรมควบคุม ODBC อื่นที่ไม่เข้ากันได้กับ ODBC รุ่น 3.0 หรือรุ่นที่ใหม่กว่า

สาเหตุ

กระบวนการOdbcConnection.GetSchemaการเรียกวิธีการSQLGetTypeInfoฟังก์ชันใน ODBC API กระบวนการSQLGetTypeInfoฟังก์ชันส่งกลับชุดผลลัพธ์ที่ประกอบด้วยหลายคอลัมน์ โปรแกรมควบคุม ODBC บางโปรแกรมอาจใช้คอลัมน์ โดยใช้ชนิดข้อมูล SQL ที่ไม่ถูกต้อง ตัวอย่างเช่น บางโปรแกรมควบคุม ODBC ใช้คอลัมน์ต่อไปนี้ โดยใช้ค่าที่มีลายเซ็น:
  • case_sensitive
  • fixed_prec_scale
  • unsigned_attribute
คอลัมน์เหล่านี้ควรใช้ค่า SQL_SMALLINT แทน ค่า SQL_SMALLINT จะมีค่าที่ได้รับการรับรอง หากหนึ่งในคอลัมน์เหล่านี้ใช้เป็นค่าที่มีลายเซ็น ข้อยกเว้นของ System.InvalidCastException เกิดขึ้นเมื่อ Microsoft ADO.NET พยายามเพี้ยนค่าเป็นค่า System.Int32

การแก้ไข

ข้อมูลโปรแกรมแก้ไขด่วน

สามารถโหลด hotfix ได้แล้วจาก Microsoft แต่มุ่งหวังให้ใช้เพื่อแก้ปัญหาที่อธิบายไว้ในบทความนี้เท่านั้น ใช้ hotfix นี้เฉพาะกับระบบต่างๆ ที่พบปัญหานี้เท่านั้น hotfix นี้อาจได้รับการทดสอบเพิ่มเติม ดังนั้น ถ้าคุณไม่ได้รับอย่างจากจากปัญหานี้ เราขอแนะนำให้ คุณรอ service pack รุ่นถัดไปของ Microsoft .NET Framework 2.0 ซึ่งประกอบด้วยโปรแกรมแก้ไขด่วนนี้

การแก้ปัญหานี้ทันที ให้ติดต่อ Microsoft Product Support Services เพื่อรับ hotfix สำหรับรายชื่อทั้งหมดของหมายเลขโทรศัพท์ของ Microsoft Product Support Services และข้อมูลเกี่ยวกับค่าใช้จ่ายในการให้คำปรึกษา แวะไปที่เว็บไซต์ต่อไปนี้ของ Microsoft::
http://support.microsoft.com/contactus/?ws=support
หมายเหตุ:ในกรณีพิเศษ อาจมีการยกเว้นค่าใช้จ่ายสำหรับการสนับสนุนทางโทรศัพท์หากผู้เชี่ยวชาญในการให้การสนับสนุนของ Microsoft ระบุว่าการปรับปรุงเฉพาะจะแก้ปัญหาของคุณได้ ค่าใช้จ่ายปกติจะใช้กับการให้การสนับสนุนสำหรับคำตอบเพิ่มเติมและเรื่องที่ไม่สามารถจัดเป็นคำถามเกี่ยวกับการอัพเดทเฉพาะ

ข้อกำหนดเบื้องต้น

คุณต้องมี.NET Framework 2.0 ติดตั้งให้ใช้โปรแกรมแก้ไขด่วนนี้

ข้อกำหนดในการเริ่มต้นระบบคอมพิวเตอร์ใหม่

คุณไม่จำเป็นต้องเริ่มต้นคอมพิวเตอร์ใหม่หลังจากใช้โปรแกรมแก้ไขด่วนนี้

ข้อมูลการทดแทนโปรแกรมแก้ไขด่วน

โปรแกรมแก้ไขด่วนนี้ไม่ได้แทนฮอตฟิกซ์อื่น ๆ

ข้อมูลแฟ้ม

โปรแกรมแก้ไขด่วนรุ่นภาษาอังกฤษนี้มีแอตทริบิวต์แฟ้ม (หรือแอตทริบิวต์แฟ้มหลังจากนี้) ซึ่งแสดงในตารางต่อไปนี้ วันที่และเวลาของแฟ้มเหล่านี้จะปรากฏในรูปแบบเวลามาตรฐานสากล (UTC) เมื่อคุณดูข้อมูลแฟ้ม ข้อมูลจะถูกแปลงเป็นเวลาท้องถิ่น เมื่อต้องการค้นหาความแตกต่างระหว่างเวลา UTC กับเวลาท้องถิ่น ใช้โซนเวลาแท็บในรายการวันและเวลาใน'แผงควบคุม'
.NET Framework 2.0 สำหรับระบบ 32 บิต (x86)
ยุบตารางนี้ขยายตารางนี้
ชื่อแฟ้มรุ่นของแฟ้มขนาดแฟ้มวันที่เวลาแพลทฟอร์ม
Mscordacwks.dll2.0.50727.190801,28004-ส.ค.-200604:03x86
Mscorlib.dll2.0.50727.1904,317,18404-ส.ค.-200604:03x86
Mscorwks.dll2.0.50727.1905,624,32004-ส.ค.-200604:02x86
Normalization.dll2.0.50727.19015,36004-ส.ค.-200604:03x86
Normidna.nlpไม่สามารถใช้งานได้59,34204-ส.ค.-200604:03ไม่สามารถใช้งานได้
Normnfc.nlpไม่สามารถใช้งานได้45,79404-ส.ค.-200604:03ไม่สามารถใช้งานได้
Normnfd.nlpไม่สามารถใช้งานได้39,28404-ส.ค.-200604:03ไม่สามารถใช้งานได้
Normnfkc.nlpไม่สามารถใช้งานได้66,38404-ส.ค.-200604:03ไม่สามารถใช้งานได้
Normnfkd.nlpไม่สามารถใช้งานได้60,29404-ส.ค.-200604:03ไม่สามารถใช้งานได้
Sos.dll2.0.50727.190382,46404-ส.ค.-200604:03x86
System.data.dll2.0.50727.1902,893,82404-ส.ค.-200604:03x86
.NET Framework 2.0 สำหรับระบบ 64 บิต (x 64)
ยุบตารางนี้ขยายตารางนี้
ชื่อแฟ้มรุ่นของแฟ้มขนาดแฟ้มวันที่เวลาแพลทฟอร์ม
Mscordacwks.dll2.0.50727.1901,597,95203 2006 Aug19:04x64
Mscorlib.dll2.0.50727.1903,956,73604-ส.ค.-200600:11x64
Mscorwks.dll2.0.50727.19010,302,97603 2006 Aug19:00x64
Normalization.dll2.0.50727.19018,43203 2006 Aug19:01x64
Normidna.nlpไม่สามารถใช้งานได้59,34203 2006 Aug19:03ไม่สามารถใช้งานได้
Normnfc.nlpไม่สามารถใช้งานได้45,79403 2006 Aug19:03ไม่สามารถใช้งานได้
Normnfd.nlpไม่สามารถใช้งานได้39,28404-ส.ค.-200604:03ไม่สามารถใช้งานได้
Normnfkc.nlpไม่สามารถใช้งานได้66,38403 2006 Aug19:03ไม่สามารถใช้งานได้
Normnfkd.nlpไม่สามารถใช้งานได้60,29403 2006 Aug19:03ไม่สามารถใช้งานได้
Sos.dll2.0.50727.190480,76803 2006 Aug19:10x64
System.data.dll2.0.50727.1902,959,87204-ส.ค.-200600:11x64
.NET Framework 2.0 สำหรับระบบ 64 บิต (IA 64)
ยุบตารางนี้ขยายตารางนี้
ชื่อแฟ้มรุ่นของแฟ้มขนาดแฟ้มวันที่เวลาแพลทฟอร์ม
Mscordacwks.dll2.0.50727.1902,711,04003 2006 Aug19:09IA-64
Mscorlib.dll2.0.50727.1903,956,73604-ส.ค.-200600:58IA-64
Mscorwks.dll2.0.50727.19021,264,38403 2006 Aug19:05IA-64
Normalization.dll2.0.50727.19044,03203 2006 Aug19:06IA-64
Normidna.nlpไม่สามารถใช้งานได้59,34204-ส.ค.-200604:03ไม่สามารถใช้งานได้
Normnfc.nlpไม่สามารถใช้งานได้45,79403 2006 Aug19:08ไม่สามารถใช้งานได้
Normnfd.nlpไม่สามารถใช้งานได้39,28404-ส.ค.-200604:03ไม่สามารถใช้งานได้
Normnfkc.nlpไม่สามารถใช้งานได้66,38404-ส.ค.-200604:03ไม่สามารถใช้งานได้
Normnfkd.nlpไม่สามารถใช้งานได้60,29404-ส.ค.-200604:03ไม่สามารถใช้งานได้
Sos.dll2.0.50727.190862,72003 2006 Aug19:16IA-64
System.data.dll2.0.50727.1903,102,72004-ส.ค.-200600:58IA-64

สถานะ

Microsoft ยืนยันว่าปัญหานี้เป็นปัญหาที่เกิดขึ้นกับผลิตภัณฑ์ของ Microsoft ซึ่งมีการระบุไว้ในส่วน "การใช้งาน"

ข้อมูลเพิ่มเติม

สำหรับข้อมูลเพิ่มเติม ให้คลิกหมายเลขบทความต่อไปนี้ เพื่อดูบทความในฐานความรู้ของ Microsoft::
824684คำอธิบายของคำศัพท์มาตรฐานที่ใช้เพื่ออธิบายปรับปรุงซอฟต์แวร์ของ Microsoft

ข้อมูลอ้างอิง

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการOdbcConnection.GetSchemaวิธีการ การเยี่ยมชมเว็บไซต์ของ Microsoft สำหรับนักพัฒนาเครือข่าย (MSDN) ต่อไปนี้:
http://msdn2.microsoft.com/en-us/library/ms135852.aspx

คุณสมบัติ

หมายเลขบทความ (Article ID): 922981 - รีวิวครั้งสุดท้าย: 12 ตุลาคม 2554 - Revision: 3.0
ใช้กับ
  • Microsoft .NET Framework 2.0
Keywords: 
kbfix kbbug kbHotfixServer kbqfe kbmt KB922981 KbMtth
แปลโดยคอมพิวเตอร์
ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ Microsoft แทนที่จะเป็นนักแปลที่เป็นบุคคล Microsoft มีบทความที่แปลโดยนักแปลและบทความที่แปลด้วยคอมพิวเตอร์ เพื่อให้คุณสามารถเข้าถึงบทความทั้งหมดในฐานความรู้ของเรา ในภาษาของคุณเอง อย่างไรก็ตาม บทความที่แปลด้วยคอมพิวเตอร์นั้นอาจมีข้อบกพร่อง โดยอาจมีข้อผิดพลาดในคำศัพท์ รูปแบบการใช้ภาษาและไวยากรณ์ เช่นเดียวกับกรณีที่ชาวต่างชาติพูดผิดเมื่อพูดภาษาของคุณ Microsoft ไม่มีส่วนรับผิดชอบต่อความคลาดเคลื่อน ความผิดพลาดหรือความเสียหายที่เกิดจากการแปลเนื้อหาผิดพลาด หรือการใช้บทแปลของลูกค้า และ Microsoft มีการปรับปรุงซอฟต์แวร์การแปลด้วยคอมพิวเตอร์อยู่เป็นประจำ
ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:922981

ให้ข้อเสนอแนะ

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com