ขณะนี้คุณออฟไลน์อยู่ กำลังรออินเทอร์เน็ตเพื่อเชื่อมต่ออีกครั้ง
ลงชื่อเข้าใช้
Cart

ข้อมูล: ข้อความข้อผิดพลาดการ "คุณลักษณะที่เลือกไม่ใช้"

ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ Microsoft แทนที่จะเป็นนักแปลที่เป็นบุคคล Microsoft มีบทความที่แปลโดยนักแปลและบทความที่แปลด้วยคอมพิวเตอร์ เพื่อให้คุณสามารถเข้าถึงบทความทั้งหมดในฐานความรู้ของเรา ในภาษาของคุณเอง อย่างไรก็ตาม บทความที่แปลด้วยคอมพิวเตอร์นั้นอาจมีข้อบกพร่อง โดยอาจมีข้อผิดพลาดในคำศัพท์ รูปแบบการใช้ภาษาและไวยากรณ์ เช่นเดียวกับกรณีที่ชาวต่างชาติพูดผิดเมื่อพูดภาษาของคุณ Microsoft ไม่มีส่วนรับผิดชอบต่อความคลาดเคลื่อน ความผิดพลาดหรือความเสียหายที่เกิดจากการแปลเนื้อหาผิดพลาด หรือการใช้บทแปลของลูกค้า และ Microsoft มีการปรับปรุงซอฟต์แวร์การแปลด้วยคอมพิวเตอร์อยู่เป็นประจำ

ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:214459
การปฏิเสธความรับผิดชอบในเนื้อหาของ KB ที่จะไม่มีการปรับปรุงอีกต่อไป
บทความนี้กล่าวถึงผลิตภัณฑ์ที่ Microsoft ไม่มีการสนับสนุนอีกต่อไป เนื้อหาของบทความจึงมีการนำเสนอ "ตามลักษณะที่เป็น" และจะไม่มีการปรับปรุงข้อมูลอีก
สรุป
เมื่อคุณใช้วัตถุข้อมูล ActiveX (ADO) ผ่านพารามิเตอร์เพื่อกระบวนงานที่เก็บไว้ คุณอาจได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้:
ข้อผิดพลาดการทำ '2147217887 (80040e21)':
[Microsoft][ODBC sql Server โปรแกรมควบคุม] ไม่มีใช้คุณลักษณะที่ไม่จำเป็น
ข้อมูลเพิ่มเติม
ข้อผิดพลาดนี้อาจเกิดขึ้นได้ถ้าคุณพยายามที่จะกำหนดชนิดของพารามิเตอร์ในคอลเลกชันพารามิเตอร์ของวัตถุสั่ง ADODB เป็นชนิดที่ไม่ถูกสนับสนุน โดยตัวให้บริการข้อมูล

ตัวอย่างเช่น ใช้ SQL Server 7.0 สร้างกระบวนงานที่เก็บไว้ในฐานข้อมูล PUBS:
   CREATE PROCEDURE GetEmployeeInfo (@thedate datetime, @NumEmployees int output)AS        SELECT @NumEmployees =  count(*) FROM EMPLOYEE WHERE hire_date < @thedate   GO				
กระบวนงานที่เก็บไว้นี้ส่งกลับค่าพารามิเตอร์การแสดงผล int ชนิดที่บ่งชี้หมายเลขของพนักงานที่มีการจ้างงานก่อนวันที่กำหนด วันมีการส่งผ่านไปยังกระบวนงานที่เก็บไว้เป็นพารามิเตอร์ และจำนวนพนักงานที่จะส่งผ่านไปยังโปรแกรมที่เรียกตามพารามิเตอร์การแสดงผล

สร้างโปรแกรมประยุกต์ ADO ให้ใช้กระบวนงานที่เก็บไว้ในขณะนี้ ตัวอย่างให้ถูกเขียนใน Visual Basic
Private Sub MySubroutine()Dim dbConnection As ADODB.ConnectionDim dbCommand As ADODB.CommandSet dbConnection = New ADODB.ConnectionSet dbCommand = New ADODB.CommandDim DSNNAME As StringDim USERNAME As StringDim PASSWORD As StringDSNNAME = "Pubs"USERNAME = "sa"PASSWORD = ""dbConnection.Open DSNNAME, USERNAME, PASSWORDdbCommand.ActiveConnection = dbConnectionDim TheDate As DateTheDate = NowdbCommand.CommandText = "GetEmployeeInfo"dbCommand.CommandType = adCmdStoredProcdbCommand.Parameters.Append dbCommand.CreateParameter("@thedate", adDBDate, adParamInput, 0, TheDate)dbCommand.Parameters.Append dbCommand.CreateParameter("@NumEmployees", adInteger, adParamOutput, 0)dbCommand.ExecuteDim strTheString As StringstrTheString = "There are " & dbCommand.Parameters("@numemployees") & " employees who were hired before " & TheDateMsgBox strTheString, vbOKOnly, "Demonstration"End Sub				
เมื่อมีการเรียกใช้โค้ดตัวอย่าง มันทำให้ข้อความแสดงข้อผิดพลาดนี้:
ข้อผิดพลาดการทำ '2147217887 (80040e21)':
[Microsoft][ODBC sql Server โปรแกรมควบคุม] ใช้คุณลักษณะที่ไม่จำเป็นไม่
นี่คือเนื่องจาก SQL Server ไม่สนับสนุนชนิดข้อมูลของ adDBDate เมื่อต้องการแก้ไขปัญหานี้ เปลี่ยนชนิดข้อมูลของพารามิเตอร์ @ theDate adDBTimeStamp

เมื่อต้องการกำหนดหมายเลข ชื่อ ชนิด และขนาดของพารามิเตอร์ที่จำเป็นในกระบวนงานที่เก็บไว้ ใช้ Parameters.Refresh เมธอดของวัตถุคำสั่ง คุณสามารถเรียกใช้เมธอดนี้ในระหว่างการพัฒนาโปรแกรมประยุกต์ของคุณเพื่อตรวจสอบความถูกต้องสำหรับกระบวนงานที่เก็บไว้ แล้วเอาโทรแพงเพื่อ Parameters.Refresh หลังจากที่คุณได้รวบรวมข้อมูลที่จำเป็น
database.

คำเตือน: บทความนี้ได้รับการแปลโดยอัตโนมัติ