FIX: La funzione di sistema @@ ERROR pu˛ restituire un valore non corretto quando si esegue un'istruzione Transact-SQL che utilizza un piano di esecuzione parallela in SQL Server 2000 a 32 bit o in SQL Server 2000 64-bit

Traduzione articoli Traduzione articoli
Identificativo articolo: 890925 - Visualizza i prodotti a cui si riferisce l?articolo.
Bug #: 471094 (SQL Server 8.0)



Espandi tutto | Chiudi tutto

In questa pagina

Contenuto dell'articolo

Sommario

Questo articolo viene descritto il seguente su questa versione di aggiornamento rapido (hotfix):
  • I problemi risolti da questo pacchetto di aggiornamento rapido (hotfix).
  • Prerequisiti per l'installazione del pacchetto aggiornamento rapido (hotfix).
  • Se Ŕ necessario riavviare il computer dopo l'installazione del pacchetto di aggiornamento rapido (hotfix).
  • Sostituzione del pacchetto hotfix da qualsiasi altro pacchetto di aggiornamento rapido (hotfix).
  • NecessitÓ di apportare le modifiche del Registro di sistema.
  • I file contenuti nel pacchetto di aggiornamenti rapidi (hotfix).

Sintomi

Quando un'istruzione Transact-SQL viene eseguita utilizzando un piano di esecuzione parallela, Microsoft SQL Server 2000 non possono impostare, nel valore della funzione di sistema @@ ERROR correttamente quando l'istruzione Transact-SQL non o quando SQL Server rileva un errore. Se si esamina il valore restituito dalla funzione di sistema @@ ERROR immediatamente dopo l'esecuzione dell'istruzione Transact-SQL, si noterÓ che la funzione di @@ ERROR restituito un valore pari a zero, anche se la query ha causato un errore diverso da zero.

Ad esempio, la seguente istruzione Transact-SQL pu˛ eseguire comunque l'istruzione DELETE anche se l'istruzione INSERT non riesce se viene utilizzato un piano di esecuzione parallela:
INSERT INTO table2 SELECT * FROM table1
IF ( @@ERROR = 0 )
  DELETE FROM table1
piani di esecuzione parallela di Nota si verificano solo su istanze di SQL Server che eseguono un computer dotato di due o pi¨ processori logici.

Per un elenco degli aggiornamenti rapidi precedenti, vedere la sezione "Microsoft SQL Server 2000 al Pack 3 o aggiornamenti rapidi di Microsoft SQL Server 2000 post-Service Pack 3a" nell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
290211Come ottenere il service pack pi¨ recente per SQL Server 2000


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

Prerequisiti

Questo aggiornamento rapido (hotfix) richiede SQL Server 2000 Service Pack 3 (SP3). Per informazioni su come ottenere SQL Server 2000 SP3, vedere il seguente articolo della Microsoft Knowledge Base riportato di seguito:
290211Come ottenere il service pack pi¨ recente per SQL Server 2000
Inoltre, questo aggiornamento rapido (hotfix) richiede che dispongono inoltre SQL Server 2000 aggiornamento rapido (hotfix) build 2000.80.977 installato.Per ulteriori informazioni sull'hotfix di SQL Server 2000 Post SP3a creare 2000.80.977, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
888007Riceverai un messaggio di errore "il prodotto non Ŕ installato un aggiornamento dei prerequisiti" quando si tenta di installare un aggiornamento rapido post-SP3 di SQL Server 2000




Informazioni sul riavvio

Non Ŕ necessario riavviare il computer dopo avere applicato questo aggiornamento rapido (hotfix).



Informazioni sul file di hotfix

Questo aggiornamento rapido (hotfix) contiene solo i file necessari per correggere i problemi elencati nel presente articolo. Questo aggiornamento rapido (hotfix) non siano tutti i file necessari per aggiornare completamente un prodotto all'ultima build.

La versione inglese di questo aggiornamento rapido (hotfix) presenta gli attributi di file (o 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.

SQL Server 2000 a 32 bit
   Date         Time   Version            Size    File name
   ---------------------------------------------------------------------
   01-Dec-2004  19:57  2000.80.993.0     664,128  Autoplt.dll      
   01-Dec-2004  19:57  2000.80.993.0      78,400  Console.exe
   01-Dec-2004  19:57  2000.80.993.0     332,352  Ctasksui.dll
   01-Dec-2004  19:57  2000.80.993.0     315,968  Custtask.dll     
   01-Dec-2004  19:57  2000.80.993.0      33,340  Dbmslpcn.dll     
   08-Apr-2004  21:42                    786,432  Distmdl.ldf
   08-Apr-2004  21:42                  2,359,296  Distmdl.mdf
   30-Sep-2003  22:55                        180  Drop_repl_hotfix.sql
   01-Dec-2004  19:57  2000.80.993.0   1,905,216  Dtspkg.dll       
   01-Dec-2004  19:57  2000.80.993.0     528,960  Dtspump.dll      
   01-Dec-2004  19:57  2000.80.993.0   1,557,052  Dtsui.dll        
   01-Dec-2004  19:57  2000.80.993.0     639,552  Dtswiz.dll       
   30-Sep-2003  22:55                    747,927  Instdist.sql
   30-Sep-2003  22:55                      1,581  Inst_repl_hotfix.sql
   01-Dec-2004  19:57  2000.80.993.0     352,828  Isqlw.exe        
   01-Dec-2004  19:57  2000.80.993.0      82,492  Itwiz.exe        
   01-Dec-2004  19:57  2000.80.993.0      90,692  Msgprox.dll      
   29-Oct-2004  08:16  8.11.41022.0      226,304  Mssdi98.dll      
   01-Dec-2004  19:57  2000.80.993.0      62,024  Odsole70.dll     
   01-Dec-2004  19:58  2000.80.993.0      25,144  Opends60.dll     
   01-Dec-2004  19:57  2000.80.993.0      57,904  Osql.exe         
   01-Dec-2004  19:57  2000.80.993.0     279,104  Pfutil80.dll     
   30-Sep-2003  22:48                    550,780  Procsyst.sql
   08-Apr-2004  21:42                     12,305  Qfe469315.sql
   08-Apr-2004  21:42                     19,195  Qfe469571.sql
   27-Aug-2004  00:13                      5,157  Qfe472197.sql
   01-Dec-2004  19:57  2000.80.993.0     143,940  Qrdrsvc.exe      
   01-Dec-2004  18:49                  1,106,776  Replmerg.sql
   01-Dec-2004  19:57  2000.80.993.0     221,768  Replprov.dll     
   01-Dec-2004  19:57  2000.80.993.0     307,784  Replrec.dll      
   01-Dec-2004  18:56  2000.80.993.0     159,813  Replres.rll
   27-Aug-2004  00:13                  1,086,925  Replsys.sql
   30-Sep-2003  22:55                    986,603  Repltran.sql
   25-Nov-2004  00:04                         55  Repl_uninstall.sql
   01-Dec-2004  19:57  2000.80.993.0     287,304  Rinitcom.dll     
   01-Dec-2004  19:57  2000.80.993.0      78,416  Sdiclnt.dll      
   01-Dec-2004  19:57  2000.80.993.0      66,112  Semmap.dll       
   01-Dec-2004  19:57  2000.80.993.0      57,916  Semnt.dll        
   01-Dec-2004  19:57  2000.80.993.0     492,096  Semobj.dll       
   01-Dec-2004  19:20  2000.80.993.0     172,032  Semobj.rll
   01-Dec-2004  19:57  2000.80.993.0      53,832  Snapshot.exe     
   30-Sep-2003  22:48                    117,834  Sp3_serv_uni.sql
   01-Dec-2004  19:57  2000.80.993.0      28,672  Sqlagent.dll     
   01-Dec-2004  19:57  2000.80.993.0     311,872  Sqlagent.exe     
   01-Dec-2004  19:57  2000.80.993.0     168,001  Sqlakw32.dll     
   01-Dec-2004  19:57  2000.80.993.0      33,344  Sqlctr80.dll     
   01-Dec-2004  19:57  2000.80.993.0   4,215,360  Sqldmo.dll       
   01-Dec-2004  19:57                     25,172  Sqldumper.exe    
   01-Dec-2004  18:48  2000.80.993.0      28,672  Sqlevn70.rll
   01-Dec-2004  19:57  2000.80.993.0     156,224  Sqlmaint.exe     
   01-Dec-2004  19:57  2000.80.993.0     180,792  Sqlmap70.dll     
   01-Dec-2004  19:57  2000.80.993.0     188,992  Sqlmmc.dll
   01-Dec-2004  19:12  2000.80.993.0     479,232  Sqlmmc.rll
   01-Dec-2004  19:57  2000.80.993.0     401,984  Sqlqry.dll
   01-Dec-2004  19:57  2000.80.993.0      57,920  Sqlrepss.dll     
   01-Dec-2004  19:58  2000.80.993.0   7,716,945  Sqlservr.exe     
   01-Dec-2004  19:57  2000.80.993.0     590,396  Sqlsort.dll      
   01-Dec-2004  19:57  2000.80.993.0      45,644  Sqlvdi.dll       
   01-Dec-2004  19:58  2000.80.993.0     106,588  Sqsrvres.dll
   01-Dec-2004  19:58  2000.80.993.0      33,340  Ssmsgnet.dll     
   01-Dec-2004  19:58  2000.80.993.0      33,340  Ssmslpcn.dll     
   01-Dec-2004  19:58  2000.80.993.0      33,340  Ssmsqlgc.dll     
   01-Dec-2004  19:58  2000.80.993.0      82,492  Ssnetlib.dll     
   01-Dec-2004  19:58  2000.80.993.0      25,148  Ssnmpn70.dll     
   01-Dec-2004  19:58  2000.80.993.0     123,456  Stardds.dll
   01-Dec-2004  19:58  2000.80.993.0     158,240  Svrnetcn.dll     
   01-Dec-2004  19:57  2000.80.993.0      76,416  Svrnetcn.exe     
   01-Dec-2004  19:58  2000.80.993.0      49,228  Ums.dll          
   01-Dec-2004  19:58  2000.80.993.0      74,304  Xplog70.dll      
   01-Dec-2004  19:58  2000.80.993.0      98,872  Xpweb70.dll
SQL Server 2000 a 64 bit
   Date         Time   Version            Size    File name        Platform
   ------------------------------------------------------------------------
   02-Dec-2004  03:15  2000.80.993.0      56,832  Dbmslpcn.dll     IA-64
   02-Dec-2004  03:14  2000.80.993.0     528,960  Dtspump.dll
   02-Dec-2004  03:15  2000.80.993.0     185,856  Msgprox.dll
   29-Oct-2004  08:16  8.11.41022.0      742,912  Mssdi98.dll      IA-64
   02-Dec-2004  03:15  2000.80.993.0     151,040  Odsole70.dll     IA-64
   02-Dec-2004  03:16  2000.80.993.0      27,136  Opends60.dll     IA-64
   01-Dec-2004  20:09                     19,880  Opends60.lib
   02-Dec-2004  03:15  2000.80.993.0     148,992  Osql.exe         IA-64
   02-Dec-2004  03:15  2000.80.993.0     353,280  Qrdrsvc.exe
   02-Dec-2004  03:15  2000.80.993.0     534,528  Replprov.dll     IA-64
   02-Dec-2004  03:15  2000.80.993.0     769,024  Replrec.dll
   02-Dec-2004  03:15  2000.80.993.0     650,240  Rinitcom.dll     IA-64
   02-Dec-2004  03:15  2000.80.993.0     160,768  Semmap.dll       IA-64
   02-Dec-2004  03:15  2000.80.993.0     132,608  Semnt.dll        IA-64
   02-Dec-2004  03:15  2000.80.993.0      88,576  Snapshot.exe     IA-64
   02-Dec-2004  03:14  2000.80.993.0      10,240  Sqlagent.dll     IA-64
   02-Dec-2004  03:15  2000.80.993.0   1,055,232  Sqlagent.exe
   02-Dec-2004  03:15  2000.80.993.0      90,112  Sqlboot.dll      IA-64
   02-Dec-2004  03:15  2000.80.993.0      32,256  Sqlctr80.dll     IA-64
   02-Dec-2004  03:15  2000.80.993.0     812,032  Sqldata.dll      IA-64
   02-Dec-2004  03:15  2000.80.993.0  13,845,504  Sqldmo.dll
   02-Dec-2004  03:15                     39,936  Sqldumper.exe    IA-64
   02-Dec-2004  03:15  2000.80.993.0     493,568  Sqlmaint.exe     IA-64
   02-Dec-2004  03:15  2000.80.993.0      23,040  Sqlmap70.dll     IA-64
   02-Dec-2004  03:15  2000.80.993.0     152,064  Sqlrepss.dll     IA-64
   02-Dec-2004  03:16  2000.80.993.0  25,255,936  Sqlservr.exe     IA-64
   02-Dec-2004  03:15  2000.80.993.0     616,960  Sqlsort.dll      IA-64
   02-Dec-2004  03:15  2000.80.993.0     120,320  Sqlvdi.dll       IA-64
   02-Dec-2004  03:15  2000.80.993.0     227,328  Sqsrvres.dll     IA-64
   02-Dec-2004  03:15  2000.80.993.0      53,760  Ssmslpcn.dll     IA-64
   02-Dec-2004  03:15  2000.80.993.0      59,904  Ssmsqlgc.dll     IA-64
   02-Dec-2004  03:15  2000.80.993.0     256,000  Ssnetlib.dll     IA-64
   02-Dec-2004  03:15  2000.80.993.0      20,992  Ssnmpn70.dll     IA-64
   02-Dec-2004  03:15  2000.80.993.0     430,080  Svrnetcn.dll
   02-Dec-2004  03:15  2000.80.993.0     185,856  Svrnetcn.exe     IA-64
   02-Dec-2004  03:15  2000.80.993.0     183,296  Xplog70.dll
   02-Dec-2004  03:15  2000.80.993.0     187,392  Xpweb70.dll      IA-64
   21-Jul-2004  17:38  2000.80.962.0      57,904  Osql.exe         x86
   30-Sep-2003  22:23  2000.80.760.0     269,824  Sqdedev.dll      IA-64
   01-Dec-2004  20:22  2000.80.993.0     146,432  Replres.rll
   01-Dec-2004  20:10  2000.80.993.0      19,968  Sqlevn70.rll
Nota A causa delle dipendenze fra i file, Ŕ possibile che l'aggiornamento rapido pi¨ recente contenente i file contengano ulteriori file.

Workaround

Per ovviare al problema, utilizzare uno dei metodi descritti di seguito:
  • Utilizzare un hint di query

    Aggiungere alla query il suggerimento OPTION (MAXDOP 1) per evitare che l'istruzione SELECT dall'utilizzo di un piano di esecuzione parallela.
  • Utilizzare il sp_configure stored procedure di sistema

    Eseguire la procedura di sistema sp_configure impostare l'opzione max degree of parallelism su 1 per l'istanza di SQL Server. Per impostare l'opzione max degree of parallelism , istruzione di esecuzione Transact-SQL seguente nell'istanza di SQL Server che si desidera modificare:
    exec sp_configure 'max degree of parallelism',1
    GO
    RECONFIGURE
    GO

    Nota Si sconsiglia questo quanto potrebbero influire sulle prestazioni.

Status

Microsoft ha confermato che questo un bug nei prodotti sono elencati nella sezione "Si applica a".

Questo problema Ŕ stato innanzitutto corretto in SQL Server 2000 Service Pack 4.

Informazioni

Per ulteriori informazioni sullo schema di denominazione per finestra di Microsoft SQL Server gli aggiornamenti, fare clic numero articolo riportato per visualizzare l'articolo della Microsoft Knowledge Base riportato di seguito:
822499Nuovo schema di denominazione per i pacchetti di aggiornamento software di Microsoft SQL Server
Per ulteriori informazioni sulla terminologia utilizzata da Microsoft correzione software dopo il rilascio, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
824684Descrizione della terminologia standard utilizzata per descrivere gli aggiornamenti software Microsoft

ProprietÓ

Identificativo articolo: 890925 - Ultima modifica: venerdý 2 novembre 2007 - Revisione: 2.3
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:á
kbmt kbquery kbsqlserv2000presp4fix kbbug kbfix kbhotfixserver kbqfe KB890925 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: 890925
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.

Invia suggerimenti

 

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