FIX: Geen records worden geretourneerd wanneer het aanroepen van de functie SQLExecute een voorbereide instructie en SQL Native Client ODBC-stuurprogramma gebruikt in SQL Server 2008

Vertaalde artikelen Vertaalde artikelen
Artikel ID: 957387 - Bekijk de producten waarop dit artikel van toepassing is.
BUG #: 50003391 (SQL-Hotfix)
Alles uitklappen | Alles samenvouwen

Op deze pagina

Symptomen

U kunt SQL Native Client ODBC-stuurprogramma gebruikt in Microsoft SQL Server 2008. Als u belt deSQLExecutefunctie een voorbereide instructie geen records worden geretourneerd. Echter, als u het SQL Native Client ODBC-stuurprogramma in SQL Server 2005 te roepen deSQLExecutefunctie, worden records geretourneerd.

Oorzaak

Dit probleem kan optreden vanwege een fout in het SQL Native Client ODBC-stuurprogramma in SQL Server 2008. Dit kan optreden als u deSQLBindParametervoor elke functieSQLExecutefunctie. Zie de sectie 'Meer informatie' voor meer informatie.

Oplossing

Informatie over de cumulatieve update

De correctie voor dit probleem werd eerst uitgebracht in cumulatieve Update 1. Klik op het volgende artikelnummer in de Microsoft Knowledge Base voor meer informatie over het verkrijgen van dit cumulatieve updatepakket voor SQL Server 2008:
956717Cumulatieve updatepakket 1 voor SQL Server 2008
OpmerkingOmdat de builds cumulatief zijn, elke nieuwe release correctie bevat alle hotfixes en de beveiligingscorrecties die opgenomen in de vorige SQL Server 2008 zijn release opgelost. Microsoft raadt aan u de meest recente fix release waarin deze hotfix toepast. Klik op het volgende artikelnummer in de Microsoft Knowledge Base voor meer informatie:
956909SQL Server 2008 bouwt die zijn uitgebracht nadat SQL Server 2008 is uitgebracht.

Informatie over hotfixes

Een ondersteunde hotfix is beschikbaar bij Microsoft. Deze hotfix is echter bedoeld om alleen het probleem dat in dit artikel wordt beschreven. Deze hotfix alleen uit op systemen waarop dit specifieke probleem zich voordoet. Deze hotfix moet wellicht extra worden getest. Als u geen ernstige problemen ondervindt, is het daarom raadzaam te wachten op de volgende update waarin deze hotfix is opgenomen.

Als u de hotfix downloaden, is er een sectie 'Hotfix downloaden beschikbaar' aan het begin van dit Knowledge Base-artikel. Als deze sectie niet wordt weergegeven, contact op met Microsoft Customer Service and Support om de hotfix te verkrijgen.

OpmerkingAls er nog andere problemen optreden of als er oplossingen vereist is, moet u mogelijk een afzonderlijk serviceverzoek indienen. De normale ondersteuningskosten gelden voor extra ondersteuningsvragen die niet in aanmerking voor deze specifieke hotfix komen. Bezoek de volgende Microsoft-website voor een volledige lijst met telefoonnummers van Microsoft Customer Service and Support of een afzonderlijk serviceverzoek maken:
http://support.Microsoft.com/contactus/?ws=support
OpmerkingHet formulier 'Hotfix gedownload' geeft de talen waarvoor de hotfix beschikbaar is. Als uw taal niet wordt weergegeven, is omdat een hotfix voor die taal beschikbaar.

Bestandsgegevens

De Engelse versie van deze hotfix heeft de bestandskenmerken (of recentere bestandskenmerken) die in de volgende tabel worden weergegeven. De datums en tijden voor deze bestanden worden weergegeven in Coordinated Universal Time (UTC). Wanneer u de bestandsinformatie weergeeft, wordt deze naar lokale tijd geconverteerd. Het verschil tussen UTC en lokale tijd, gebruikt u deTijdzonetabblad in deDatum en tijditem in het Configuratiescherm.
32-Bits edities van SQL Server 2008
Deze tabel samenvouwenDeze tabel uitklappen
BestandsnaamBestandsversieBestandsgrootteDatumTijdPlatform
Kfsqlncli.dll2007.100.1755.016,92006 Sep 200815: 23x 86
Sqlncli10.dll2007.100.1755.02,459,67206 Sep 200815: 40x 86
SQL Server 2008 64-bits edities
Deze tabel samenvouwenDeze tabel uitklappen
BestandsnaamBestandsversieBestandsgrootteDatumTijdPlatform
Kfsqlncli.dll2007.100.1755.017,43206 Sep 200820: 57x 64
Sqlncli10.dll2007.100.1755.03,158,55206 Sep 200821: 12x 64

Workaround

Bellen om dit probleem te omzeilen, deSQLBindParameterfunctie één keer. Wanneer u belt deSQLBindParameterfunctioneren, controleert u of de volgende voorwaarden wordt voldaan:
  • DeColumnSizeargument is van voldoende grootte.
  • DeStrlen_or_IndPtrargument is ingesteld op SQL_NTS.
Na de eerste aanroep van deSQLExecutefunctie is aangebracht, kan de waarde worden gekopieerd naar deParameterValuePtrargument.

Status

Microsoft heeft bevestigd dat dit probleem in de Microsoft-producten die worden vermeld in de sectie 'Van toepassing op' is.

Meer informatie

Dit probleem treedt op met deSQLBindParameteroproep. Als de vorige buffer overeenkomt met de grootte van de lengte van de volgende waarde, wordt de re-prepare van de instructie niet uitgegeven. In het volgende voorbeeld van een ODBC-trace buffer voor de eerste parameter overeenkomt met de lengte van de volgende nieuwe parameter.

Eerste parameter:
EC8 b6c SQLBindParameter afsluiten met retourcode 0 (SQL_SUCCESS)
HSTMT 05A8E260
UWORD 1
SWORD 1<sql_param_input></sql_param_input>
SWORD -8<sql_c_wchar></sql_c_wchar>
SWORD -9<sql_wvarchar></sql_wvarchar>
SQLULEN 7
SWORD 0
PTR 0X028C8A98
SQLLEN 65535
SQLLEN * 0X050506F8 (14)
Volgende nieuwe parameter:
EC8 b6c SQLBindParameter afsluiten met retourcode 0 (SQL_SUCCESS)
HSTMT 05A8E260
UWORD 1
SWORD 1<sql_param_input></sql_param_input>
SWORD -8<sql_c_wchar></sql_c_wchar>
SWORD -9<sql_wvarchar></sql_wvarchar>
SQLULEN 14
SWORD 0
PTR 0X028C4F80
SQLLEN 65535
SQLLEN * 0X050506F8 (28)

Referenties

Voor meer informatie over deSQLExecutefunctie, Ga naar de volgende website van Microsoft Developer Network (MSDN):
http://msdn.Microsoft.com/en-us/library/ms713584 (VS.85) .aspx
Voor meer informatie over deSQLBindParameterfunctie, de volgende MSDN-website:
http://msdn.Microsoft.com/en-us/library/ms710963 (VS.85) .aspx
Opmerking Dit is een artikel voor snelle publicatie dat rechtstreeks is gemaakt vanuit de ondersteuningsorganisatie van Microsoft. De informatie in dit artikel wordt in de huidige vorm aangeboden in reactie op nieuw geconstateerde problemen. Aangezien artikelen van dit type zeer snel moeten worden gepubliceerd, kan de inhoud typografische fouten bevatten en kan de inhoud zonder voorafgaande kennisgeving worden gewijzigd. Raadpleeg de Gebruiksrechtovereenkomst voor overige aandachtspunten.

Eigenschappen

Artikel ID: 957387 - Laatste beoordeling: zaterdag 19 maart 2011 - Wijziging: 2.0
De informatie in dit artikel is van toepassing op:
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Standard Edition for Small Business
Trefwoorden: 
kbautohotfix kbexpertiseinter kbfix kbbug kbqfe kbmt KB957387 KbMtnl
Automatisch vertaald artikel
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:957387

Geef ons feedback

 

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