Identificativo articolo: 898115 - Ultima modifica: venerdì 2 novembre 2007 - Revisione: 1.5

FIX: Viene valutata la subquery in una funzione CASE anche se la condizione nell'espressione WHEN è false in SQL Server 2000

Hotfix Download is availableHotfix disponibile per il download
Visualizza e richiedi i download dell'hotfix
Bug #: 474152 (SQL Server 8.0)
Microsoft distribuisce le correzioni di Microsoft SQL Server 2000 come un unico file scaricabile. Poiché le correzioni sono cumulative, ogni nuova versione contiene tutti gli aggiornamenti rapidi e tutte le correzioni di protezione rilasciate con SQL Server 2000 precedente versione di correzione.

In questa pagina

Espandi tutto | Chiudi tutto

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 hotfix
  • Se è necessario riavviare il computer dopo l'installazione del pacchetto di aggiornamento rapido (hotfix)
  • Se il pacchetto di hotfix è sostituito da qualsiasi altri pacchetti di aggiornamento rapido (hotfix)
  • Se è necessario apportare modifiche del Registro di sistema
  • I file contenuti nel pacchetto di aggiornamenti rapidi (hotfix)

Sintomi

In Microsoft SQL Server 2000, quando si utilizza una funzione CASE che contiene una sottoquery per l'espressione QUINDI la subquery viene valutata anche se la condizione nell'espressione WHEN è false.

Ad esempio, l'espressione WHEN controlla se un campo è NUMERIC nella query seguente e la sottoquery nell'espressione QUINDI converte in questo campo in un INT:
SELECT * FROM table1 T1
  WHERE CASE WHEN isnumeric(T1.varcharColumn)=1
    THEN CASE WHEN exists(SELECT * FROM table1 S1 WHERE cast(T1.varcharColumn as int) = S1.numericColumn)
      THEN 0
    ELSE 1
    END
  ELSE 2
  END=1 
quando si esegue la query, è visualizzato il seguente messaggio di errore:
Server: Tipo di messaggio 245, livello 16, stato 1, errore di sintassi di riga 4 convertendo il valore di varchar '<columndata>' a una colonna di dati int.
Nota In questo esempio, quando il campo non è di tipo NUMERIC, l'espressione QUINDI non dovrà essere valutato.

Per un elenco di tutti gli hotfix rilasciati pubblicamente SQL Server 2000 Service Pack 3a, vedere il seguente articolo della Microsoft Knowledge Base riportato di seguito:
810185  (http://support.microsoft.com/kb/810185/ ) Aggiornamento di aggiornamento rapido (hotfix) di SQL Server 2000 per SQL Server 2000 Service Pack 3 e 3a

Risoluzione

Informazioni sull'hotfix

È disponibile un hotfix supportato. Questo hotfix è tuttavia destinato esclusivamente alla risoluzione del problema descritto in questo articolo. Consente di applicare questo aggiornamento rapido (hotfix) solo ai sistemi in cui si verifica questo problema specifico.

Se l'hotfix è disponibile per il download, è una sezione "Hotfix disponibile per il download" all'inizio di questo articolo della Knowledge Base. Se non viene visualizzato in questa sezione, inviare una richiesta di servizio clienti Microsoft e supporto tecnico per ottenere l'hotfix.

Nota Se si verificano ulteriori problemi o se la risoluzione dei problemi è necessario, potrebbe essere necessario creare una richiesta di servizio separato. I costi di supporto normale verranno applicati per eventuali ulteriori domande e problemi che non dovessero rientrare nello specifico hotfix in questione. Per un elenco completo, di Microsoft Customer Service and Support numeri di telefono o a creare una richiesta di servizio distinto, visitare il seguente sito Web Microsoft:
http://support.microsoft.com/contactus/?ws=support (http://support.microsoft.com/contactus/?ws=support)
Nota Il modulo "Hotfix disponibile per il download" Visualizza le lingue per cui è disponibile l'aggiornamento rapido. Se non viene visualizzata la lingua, è perché un aggiornamento rapido (hotfix) non è disponibile per tale lingua.

Prerequisiti

  • Microsoft SQL Server 2000 Service Pack 3 (SP3)

    Per ulteriori informazioni su come ottenere SQL Server 2000 Service Pack 3, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
    290211  (http://support.microsoft.com/kb/290211/ ) Come ottenere il service pack più recente per SQL Server 2000
  • Microsoft SQL Server 2000 aggiornamento rapido (hotfix) build 8.00.1007

    Per ulteriori informazioni su come ottenere l'hotfix di SQL Server 2000 creare 8.00.1007, fare clic sul seguente numero per visualizzare l'articolo della Microsoft Knowledge Base riportato di seguito:
    893312  (http://support.microsoft.com/kb/893312/ ) FIX: È possibile che venga visualizzato un messaggio di errore "SQL Server non può generare il thread process_loginread" e una perdita di memoria potrebbe verificarsi quando si annulla una query remota in SQL Server 2000

Informazioni sul riavvio

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

Informazioni del Registro di sistema

Non è necessario modificare il Registro di sistema.

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 può contenere di tutti i file necessari per aggiornare completamente un prodotto all'ultima build.

La versione di lingua inglese di questo aggiornamento rapido (hotfix) presenta gli attributi di file (o attributi successivi) elencati nella tabella riportata di seguito. Le date e le ore per questi file sono indicati in UTC (Coordinated Universal Time). 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
   -----------------------------------------------------------
   22-Apr-2005  16:44  2000.80.1022.0    664,128  Autoplt.dll      
   22-Apr-2005  16:44  2000.80.1022.0     78,400  Console.exe      
   22-Apr-2005  16:44  2000.80.1022.0    332,352  Ctasksui.dll     
   22-Apr-2005  16:44  2000.80.1022.0    315,968  Custtask.dll     
   22-Apr-2005  16:44  2000.80.1022.0     33,340  Dbmslpcn.dll     
   22-Apr-2005  16:44  2000.80.1022.0  1,905,216  Dtspkg.dll       
   22-Apr-2005  16:44  2000.80.1022.0    528,960  Dtspump.dll      
   22-Apr-2005  16:44  2000.80.1022.0     41,536  Dtsrun.exe       
   22-Apr-2005  16:44  2000.80.1022.0  1,557,052  Dtsui.dll        
   22-Apr-2005  16:44  2000.80.1022.0    639,552  Dtswiz.dll       
   22-Apr-2005  16:44  2000.80.1022.0    102,992  Impprov.dll      
   22-Apr-2005  16:44  2000.80.1022.0    352,828  Isqlw.exe        
   22-Apr-2005  16:44  2000.80.1022.0     82,492  Itwiz.exe        
   22-Apr-2005  16:44  2000.80.1022.0     90,692  Msgprox.dll      
   15-Apr-2005  00:58  8.11.41022.0      226,304  Mssdi98.dll      
   22-Apr-2005  16:44  2000.80.1022.0     62,024  Odsole70.dll     
   22-Apr-2005  16:45  2000.80.1022.0     25,144  Opends60.dll     
   22-Apr-2005  16:44  2000.80.1022.0     57,904  Osql.exe         
   22-Apr-2005  16:44  2000.80.1022.0    279,104  Pfutil80.dll     
   22-Apr-2005  16:44  2000.80.1022.0    143,940  Qrdrsvc.exe      
   22-Apr-2005  16:44  2000.80.1022.0    221,768  Replprov.dll     
   22-Apr-2005  16:44  2000.80.1022.0    307,784  Replrec.dll      
   22-Apr-2005  16:44  2000.80.1022.0    287,304  Rinitcom.dll     
   22-Apr-2005  16:44  2000.80.1022.0     78,416  Sdiclnt.dll      
   22-Apr-2005  16:44  2000.80.1022.0    823,872  Semexec.dll      
   22-Apr-2005  16:44  2000.80.1022.0     66,112  Semmap.dll       
   22-Apr-2005  16:44  2000.80.1022.0     57,916  Semnt.dll        
   22-Apr-2005  16:44  2000.80.1022.0    492,096  Semobj.dll       
   22-Apr-2005  16:44  2000.80.1022.0     53,832  Snapshot.exe     
   22-Apr-2005  16:43  2000.80.1022.0     28,672  Sqlagent.dll     
   22-Apr-2005  16:44  2000.80.1022.0    311,872  Sqlagent.exe     
   22-Apr-2005  16:43  2000.80.1022.0    168,001  Sqlakw32.dll     
   22-Apr-2005  16:44  2000.80.1022.0     33,344  Sqlctr80.dll     
   22-Apr-2005  16:44  2000.80.1022.0    815,676  Sqldata.dll      
   22-Apr-2005  16:44  2000.80.1022.0  4,215,360  Sqldmo.dll       
   22-Apr-2005  16:44                     25,172  Sqldumper.exe    
   22-Apr-2005  16:44  2000.80.1022.0    156,224  Sqlmaint.exe     
   22-Apr-2005  16:44  2000.80.1022.0    180,792  Sqlmap70.dll     
   22-Apr-2005  16:44  2000.80.1022.0    188,992  Sqlmmc.dll       
   22-Apr-2005  16:44  2000.80.1022.0    401,984  Sqlqry.dll       
   22-Apr-2005  16:44  2000.80.1022.0     57,920  Sqlrepss.dll     
   22-Apr-2005  16:44  2000.80.1022.0    590,396  Sqlsort.dll      
   22-Apr-2005  16:44  2000.80.1022.0     45,644  Sqlvdi.dll       
   22-Apr-2005  16:44  2000.80.1022.0    106,588  Sqsrvres.dll     
   22-Apr-2005  16:44  2000.80.1022.0     33,340  Ssmsgnet.dll     
   22-Apr-2005  16:44  2000.80.1022.0     33,340  Ssmslpcn.dll     
   22-Apr-2005  16:44  2000.80.1022.0     33,340  Ssmsqlgc.dll     
   22-Apr-2005  16:44  2000.80.1022.0     33,340  Ssmssnet.dll     
   22-Apr-2005  16:44  2000.80.1022.0     82,492  Ssnetlib.dll     
   22-Apr-2005  16:44  2000.80.1022.0     25,148  Ssnmpn70.dll     
   22-Apr-2005  16:44  2000.80.1022.0    123,456  Stardds.dll      
   22-Apr-2005  16:44  2000.80.1022.0    158,268  Svrnetcn.dll     
   22-Apr-2005  16:44  2000.80.1022.0     76,416  Svrnetcn.exe     
   22-Apr-2005  16:44  2000.80.1022.0     74,304  Xplog70.dll      
   22-Apr-2005  16:45  2000.80.1022.0     98,872  Xpweb70.dll      
SQL Server 2000 a 64 bit
   Date         Time   Version         Size    File name          Platform
   -----------------------------------------------------------------------
   26-Apr-2005  04:21  2000.80.1022.0      56,832  Dbmslpcn.dll   IA-64
   26-Apr-2005  04:20  2000.80.1022.0     528,960  Dtspump.dll    x86
   26-Apr-2005  04:21  2000.80.1022.0     244,736  Impprov.dll    IA-64
   26-Apr-2005  04:21  2000.80.1022.0     185,856  Msgprox.dll    IA-64
   15-Apr-2005  00:51  8.11.41022.0       742,912  Mssdi98.dll    IA-64
   26-Apr-2005  04:21  2000.80.1022.0     150,528  Odsole70.dll   IA-64
   26-Apr-2005  04:22  2000.80.1022.0      27,136  Opends60.dll   IA-64
   26-Apr-2005  04:21  2000.80.1022.0     148,992  Osql.exe       IA-64
   26-Apr-2005  04:21  2000.80.1022.0     353,280  Qrdrsvc.exe    IA-64
   26-Apr-2005  04:21  2000.80.1022.0     535,552  Replprov.dll   IA-64
   26-Apr-2005  04:21  2000.80.1022.0     769,024  Replrec.dll    IA-64
   26-Apr-2005  04:21  2000.80.1022.0     650,240  Rinitcom.dll   IA-64
   26-Apr-2005  04:21  2000.80.1022.0     160,768  Semmap.dll     IA-64
   26-Apr-2005  04:21  2000.80.1022.0     132,608  Semnt.dll      IA-64
   26-Apr-2005  04:21  2000.80.1022.0      88,576  Snapshot.exe   IA-64
   26-Apr-2005  04:20  2000.80.1022.0      10,240  Sqlagent.dll   IA-64
   26-Apr-2005  04:21  2000.80.1022.0   1,055,232  Sqlagent.exe   IA-64
   26-Apr-2005  04:21  2000.80.1022.0      90,112  Sqlboot.dll    IA-64
   26-Apr-2005  04:21  2000.80.1022.0      32,256  Sqlctr80.dll   IA-64
   26-Apr-2005  04:21  2000.80.1022.0     812,032  Sqldata.dll    IA-64
   26-Apr-2005  04:21  2000.80.1022.0  13,845,504  Sqldmo.dll     IA-64
   26-Apr-2005  04:21                      39,936  Sqldumper.exe  IA-64
   26-Apr-2005  04:21  2000.80.1022.0     493,568  Sqlmaint.exe   IA-64
   26-Apr-2005  04:21  2000.80.1022.0      23,040  Sqlmap70.dll   IA-64
   26-Apr-2005  04:21  2000.80.1022.0     152,064  Sqlrepss.dll   IA-64
   26-Apr-2005  04:21  2000.80.1022.0     616,960  Sqlsort.dll    IA-64
   26-Apr-2005  04:21  2000.80.1022.0     120,320  Sqlvdi.dll     IA-64
   26-Apr-2005  04:21  2000.80.1022.0     227,328  Sqsrvres.dll   IA-64
   26-Apr-2005  04:21  2000.80.1022.0      53,760  Ssmslpcn.dll   IA-64
   26-Apr-2005  04:21  2000.80.1022.0      59,904  Ssmsqlgc.dll   IA-64
   26-Apr-2005  04:21  2000.80.1022.0     256,000  Ssnetlib.dll   IA-64
   26-Apr-2005  04:21  2000.80.1022.0      20,992  Ssnmpn70.dll   IA-64
   26-Apr-2005  04:21  2000.80.1022.0     430,080  Svrnetcn.dll   IA-64
   26-Apr-2005  04:21  2000.80.1022.0     185,856  Svrnetcn.exe   IA-64
   26-Apr-2005  04:21  2000.80.1022.0     183,296  Xplog70.dll    IA-64
   26-Apr-2005  04:21  2000.80.1022.0     187,392  Xpweb70.dll    IA-64

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".

Informazioni

Per ulteriori informazioni sullo schema di denominazione degli aggiornamenti di Microsoft SQL Server, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
822499  (http://support.microsoft.com/kb/822499/ ) Nuovo schema di denominazione per i pacchetti di aggiornamento software di Microsoft SQL Server
Per ulteriori informazioni sulla terminologia che Microsoft utilizza correzione di software dopo il rilascio, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
824684  (http://support.microsoft.com/kb/824684/ ) Descrizione della terminologia standard utilizzata per descrivere gli aggiornamenti software Microsoft

Le informazioni in questo articolo si applicano a:
  • Microsoft SQL Server 2000 Enterprise Edition 64-bit
  • Microsoft SQL Server 2000 Desktop Engine (Windows)
  • Microsoft SQL Server 2000 Developer Edition
  • Microsoft SQL Server 2000 Enterprise Edition
  • Microsoft SQL Server 2000 Personal Edition
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2000 Workgroup Edition
Chiavi: 
kbmt kbautohotfix kbbug kbfix kbhotfixserver kbqfe KB898115 KbMtit
Traduzione automatica articoliTraduzione 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: 898115  (http://support.microsoft.com/kb/898115/en-us/ )
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.
 

Traduzione articoli

 

Related Support Centers