Je bent nu offline; er wordt gewacht tot er weer een internetverbinding is

De browser wordt niet ondersteund

Werk de browser bij als je de site wilt gebruiken.

Werk de browser bij naar de nieuwste versie van Internet Explorer

INFO: Foutbericht 'Optionele functie niet geïmplementeerd'

BELANGRIJK: Dit artikel is vertaald door de vertaalmachine software van Microsoft in plaats van door een professionele vertaler. Microsoft biedt u professioneel vertaalde artikelen en artikelen vertaald door de vertaalmachine, zodat u toegang heeft tot al onze knowledge base artikelen in uw eigen taal. Artikelen vertaald door de vertaalmachine zijn niet altijd perfect vertaald. Deze artikelen kunnen fouten bevatten in de vocabulaire, zinsopbouw en grammatica en kunnen lijken op hoe een anderstalige de taal spreekt en schrijft. Microsoft is niet verantwoordelijk voor onnauwkeurigheden, fouten en schade ontstaan door een incorrecte vertaling van de content of het gebruik ervan door onze klanten. Microsoft past continue de kwaliteit van de vertaalmachine software aan door deze te updaten.

De Engelstalige versie van dit artikel is de volgende:214459
Vrijwaring inhoud KB-artikelen over niet langer ondersteunde producten
Dit artikel heeft betrekking op producten waarvoor Microsoft geen ondersteuning meer biedt. Daarom wordt dit artikel alleen in de huidige vorm aangeboden en wordt het niet meer bijgewerkt.
Samenvatting
Wanneer u ActiveX Data Objects (ADO) parameters doorgeven aan een opgeslagen procedure gebruikt, wordt de volgende fout weer gegeven:
Run time fout '(80040e21) 2147217887':
[Microsoft][ODBC SQL Server Driver] Optionele functie is niet geïmplementeerd.
Meer informatie
Deze fout kan optreden als u probeert om het TYPE van een parameter instellen in een ADODB opdrachtobject parameters-collectie om een type dat niet wordt ondersteund door de gegevensprovider.

Met behulp van SQL Server 7. 0, maakt bijvoorbeeld een opgeslagen procedure in de data base PUBS:
   CREATE PROCEDURE GetEmployeeInfo (@thedate datetime, @NumEmployees int output)AS        SELECT @NumEmployees =  count(*) FROM EMPLOYEE WHERE hire_date < @thedate   GO				
Deze opgeslagen procedure retourneert een uitvoer parameter van het type integer die het aantal werknemers in dienst genomen vóór een bepaalde datum aangeeft. De datum wordt doorgegeven aan de opgeslagen procedure een parameter en het aantal werknemers wordt doorgegeven aan het aanroep ende programma als een uitvoer parameter.

Maak nu een ADO-toepassing waarmee de opgeslagen procedure. Het voorbeeld is geschreven in 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				
Als de voorbeeldcode is uitgevoerd, krijgt deze fout:
Run time fout '(80040e21) 2147217887':
[Microsoft][ODBC SQL Server Driver] Optionele functie niet geïmplementeerd.
Dit komt omdat SQL Server biedt geen ondersteuning voor het gegevens type adDBDate. AdDBTimeStamp wijzigen in het gegevens type van de parameter @ nog dit probleem te verhelpen.

Gebruik de methode Parameters.Refresh van het command-object voor het bepalen van het aantal namen, typen en grootten van de parameters die nodig zijn in een opgeslagen procedure. U kunt deze methode aanroepen tijdens de ontwikkeling van uw toepassing om te bepalen van de juiste vereisten voor de opgeslagen procedure en vervolgens de dure aanroep Parameters.Refresh verwijderen nadat u de benodigde gegevens hebt verzameld.
data base

Waarschuwing: dit artikel is automatisch vertaald

Eigenschappen

Artikel-id: 214459 - Laatst bijgewerkt: 02/28/2011 07:09:00 - Revisie: 2.0

  • Microsoft ActiveX Data Objects 2.7
  • kbDSupport kbinfo kbstoredproc kbmt KB214459 KbMtnl
Feedback