FIX: Un accesso violazione se una chiamata sp_cursoropen fa un parametro incluso non definito

Traduzione articoli Traduzione articoli
Identificativo articolo: 810163 - Visualizza i prodotti a cui si riferisce l?articolo.
Questo articolo è stato archiviato. L?articolo, quindi, viene offerto ?così come è? e non verrà più aggiornato.
BUG #: 363090 (RIFERIMENTO)
Espandi tutto | Chiudi tutto

In questa pagina

Sintomi

Se un sp_cursoropen chiama riferimenti di un parametro che non è definito, il server genera una violazione di accesso gestito in CExecParam::Init . La query potrebbe essere simile alla seguente query:
exec sp_cursoropen @P1 output,
      N'SELECT * FROM tbl WHERE somecolumn = @P5',
      @P2 output, @P3 output, @P4 output
Nota la query include un @ P5 parametro, ma lo tipo e il valore del parametro non disponibili.

The following stack is similar to the stack that is recorded in the SQL Server error log:
* Short Stack Dump
* 005DBD40 Module(sqlservr+001DBD40) (CExecParam::Init+00000006)
* 005DC162 Module(sqlservr+001DC162) (CParamExchange::InsertParam+0000001B)
* 00584715 Module(sqlservr+00184715) (CSPCursorOpenParams::CreateExecSqlPxp+0000016C)
* 00581FD0 Module(sqlservr+00181FD0) (SPCursor::Open+000000C6)
* 005E4CDE Module(sqlservr+001E4CDE) (CSpecProc::ExecuteSpecial+00000080)
* 005E49B6 Module(sqlservr+001E49B6) (CXProc::Execute+000000A3)
* 005E6BB4 Module(sqlservr+001E6BB4) (CSQLSource::Execute+0000037B)
* 00429DD3 Module(sqlservr+00029DD3) (execrpc+000004CB)
* 0042904D Module(sqlservr+0002904D) (execute_rpc+00000019)
* 00410FCE Module(sqlservr+00010FCE) (process_commands+00000210)
* 41073379 Module(UMS+00003379) (ProcessWorkRequests+0000024A)
* 41073071 Module(UMS+00003071) (ThreadStartRoutine+000000BD)
* 7800C9EB Module(MSVCRT+0000C9EB) (beginthread+000000CE)
* 77E96523 Module(KERNEL32+00016523) (TlsSetValue+00000115)
Note This stack is from Sqlservr.exe build 534.

Risoluzione

Informazioni sul Service pack

Per risolvere il problema, ottenere il service pack più recente per Microsoft SQL Server 2000. Per ulteriori informazioni, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
290211Come ottenere il service pack più recente per SQL Server 2000

Informazioni sull'hotfix

La versione di lingua inglese di questo aggiornamento rapido (hotfix) presenta gli attributi di file (o attributi successivi) elencati nella tabella riportata di seguito. Date e ore per questi file sono indicati nella coordinated universal time (UTC). Quando si visualizzano le informazioni sul file, viene convertito in ora locale. Per calcolare la differenza tra ora UTC e l'ora locale, utilizzare la scheda fuso orario dello strumento Data e ora del Pannello di controllo.

La seguente correzione è hotfix (build) 701. Può essere applicato solo a SQL Server 2000 Service Pack 2 (SP2).
   Date         Time   Version              Size  File name
   -------------------------------------------------------------------
   30-Aug-2002  21:08                    786,432  Distmdl.ldf
   30-Aug-2002  21:08                  2,359,296  Distmdl.mdf
   09-Oct-2002  00:54                        544  Drop_repl_hotfix.sql
   02-Jul-2002  15:35  2000.80.650.0     107,088  Impprov.dll      
   19-Jul-2002  16:56                    774,516  Instdist.sql
   08-Oct-2002  23:56                     12,615  Inst_repl_hotfix.sql
   20-Aug-2002  16:24  2000.80.679.0     111,172  Logread.exe      
   07-Apr-2002  02:08  2000.80.606.0      62,024  Odsole70.dll     
   03-Jan-2002  01:59                     18,185  Qfe356326.sql
   20-Aug-2002  16:47  2000.80.679.0     135,748  Qrdrsvc.exe      
   26-Aug-2002  22:49  2000.80.679.0     406,088  Rdistcom.dll     
   04-Oct-2001  01:36                    437,302  Replcom.sql
   20-Aug-2002  16:33  2000.80.679.0     152,136  Replmerg.exe     
   19-Nov-2001  20:36                    993,945  Replmerg.sql
   05-Nov-2002  23:48  2000.80.700.0     221,768  Replprov.dll     
   04-Oct-2001  01:36                    986,906  Replsys.sql
   04-Oct-2001  01:36                    881,228  Repltran.sql
   26-Aug-2002  22:49  2000.80.679.0     283,208  Rinitcom.dll     
   16-Sep-2002  22:31                    390,045  Securityhotfix.sql
   26-Aug-2002  22:49  2000.80.679.0      28,672  Sqlagent.dll     
   26-Aug-2002  18:39  2000.80.679.0     311,872  Sqlagent.exe     
   28-Aug-2002  16:32  2000.80.679.0      49,152  Sqlagent.rll
   26-Aug-2002  22:49  2000.80.679.0      53,824  Sqlcmdss.dll     
   28-Aug-2002  16:40  2000.80.679.0      12,288  Sqlcmdss.rll
   24-Oct-2002  17:37  2000.80.695.0     176,696  Sqlmap70.dll     
   08-Nov-2002  00:49  2000.80.701.0   7,471,188  Sqlservr.exe     
   01-Nov-2002  18:56  2000.80.698.0      45,644  Sqlvdi.dll       
   01-Nov-2002  18:00  2000.80.697.0      82,492  Ssnetlib.dll     
   07-Apr-2002  02:08  2000.80.606.0      70,208  Xplog70.dll      
   07-Apr-2002  02:08  2000.80.606.0      53,828  Xpqueue.dll      
   07-Apr-2002  02:08  2000.80.606.0     156,228  Xprepl.dll       
   12-Jul-2002  01:00  2000.80.658.0     279,104  Xpstar.dll       
   16-Sep-2002  23:12  2000.80.686.0      98,872  Xpweb70.dll

A separate fix (build 8.00.0765) that addresses this problem in SQL Server 2000 SP3 is available.
   Date         Time   Version              Size  File name
   -------------------------------------------------------------------
   08-Feb-2003  05:43                    786,432  Distmdl.ldf
   08-Feb-2003  05:43                  2,359,296  Distmdl.mdf
   30-Jan-2003  01:55                        180  Drop_repl_hotfix.sql
   01-Feb-2003  00:32  2000.80.763.0   1,557,052  Dtsui.dll        
   30-Jan-2003  05:18                    746,470  Instdist.sql
   30-Jan-2003  01:55                      1,402  Inst_repl_hotfix.sql
   08-Feb-2003  06:40  2000.80.765.0      90,692  Msgprox.dll      
   08-Feb-2003  03:53                  1,065,895  Replmerg.sql
   08-Feb-2003  06:40  2000.80.765.0     221,768  Replprov.dll     
   08-Feb-2003  06:40  2000.80.765.0     307,784  Replrec.dll      
   30-Jan-2003  05:18                  1,084,318  Replsys.sql
   08-Feb-2003  06:40  2000.80.765.0     176,696  Sqlmap70.dll     
   08-Feb-2003  06:40  2000.80.765.0      57,920  Sqlrepss.dll     
   08-Feb-2003  06:41  2000.80.765.0   7,528,529  Sqlservr.exe     
   08-Feb-2003  06:40  2000.80.765.0      45,644  Sqlvdi.dll       
   08-Feb-2003  06:40  2000.80.765.0      82,492  Ssnetlib.dll
Nota A causa delle dipendenze fra i file, la funzionalità che contiene i file o l'aggiornamento rapido (hotfix) più recente può contenere anche ulteriori file.

Status

Microsoft ha confermato che questo problema riguarda i prodotti sono elencati nella sezione "Si applica a".Questo problema è stato innanzitutto corretto in SQL Server 2000 Service Pack 4.

Informazioni

Questo problema si verifica solo con le query non valido. La correzione del problema consiste nel generare un errore che indica che la chiamata sp_cursoropen non è corretto, anziché causa una violazione di accesso.

Proprietà

Identificativo articolo: 810163 - Ultima modifica: giovedì 27 febbraio 2014 - Revisione: 10.4
Le informazioni in questo articolo si applicano a:
  • Microsoft SQL Server 2000 Developer Edition
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2000 Enterprise Edition
  • Microsoft SQL Server 2000 Personal Edition
  • Microsoft SQL Server 2000 Workgroup Edition
  • Microsoft SQL Server 2000 Desktop Engine (Windows)
  • Microsoft SQL Server 2000 Enterprise Edition 64-bit
Chiavi: 
kbnosurvey kbarchive kbmt kbhotfixserver kbqfe kbqfe kbsqlserv2000presp4fix kbfix kbbug KB810163 KbMtit
Traduzione automatica articoli
Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 810163
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

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