FIX: Query Transact-SQL che utilizza visualizzazioni potrebbe non riuscire in modo imprevisto in SQL Server 2000 SP3

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: 828269
Questo articolo è stato archiviato. L’articolo, quindi, viene offerto “così come è” e non verrà più aggiornato.
Per la una versione di SQL Server 2000 Service Pack 2 di questo articolo, vedere 818406.
Bug #: 469157 (SQL Server 8.0)
Sintomi
Quando si esegue un'istruzione Transact-SQL che fa riferimento a numerose visualizzazioni, l'istruzione potrebbe non riuscire ed è visualizzato il seguente messaggio di errore:

"Server: messaggio 4414, livello 16, stato 1, riga 1 può allocare non la tabella ausiliaria per la risoluzione di vista o funzione. Il numero massimo di tabelle in una query (256) è stato superato."
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 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.
   Date         Time   Version        Size       File name   -------------------------------------------------------------------   26-Feb-2003  03:41  2000.80.777.0     29,244  Dbmslpcn.dll   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   01-Apr-2003  02:07                     1,873  Odsole.sql   05-Apr-2003  01:46  2000.80.800.0     62,024  Odsole70.dll   02-Apr-2003  21:48  2000.80.796.0     57,904  Osql.exe   02-Apr-2003  23:15  2000.80.797.0    279,104  Pfutil80.dll   04-Apr-2003  21:27                 1,083,467  Replmerg.sql   04-Apr-2003  21:53  2000.80.798.0    221,768  Replprov.dll   08-Feb-2003  06:40  2000.80.765.0    307,784  Replrec.dll   01-Apr-2003  02:23                 1,084,828  Replsys.sql   24-Apr-2003  23:47                       736  Shortcut to files.lnk   03-Apr-2003  18:14                   104,868  Sp3_serv_uni.sql   19-Mar-2003  18:20  2000.80.789.0     28,672  Sqlevn70.rll   28-Feb-2003  01:34  2000.80.778.0    176,696  Sqlmap70.dll   08-Feb-2003  06:40  2000.80.765.0     57,920  Sqlrepss.dll   05-Apr-2003  01:47  2000.80.800.0  7,540,817  Sqlservr.exe   08-Feb-2003  06:40  2000.80.765.0     45,644  Sqlvdi.dll   26-Feb-2003  03:41  2000.80.777.0     29,244  Ssmslpcn.dll   26-Feb-2003  03:41  2000.80.777.0     82,492  Ssnetlib.dll   17-Mar-2003  14:49                   727,132  Sysmessages.sym   28-Feb-2003  01:34  2000.80.778.0     98,872  Xpweb70.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" di questo articolo.Questo problema è stato innanzitutto corretto in SQL Server 2000 Service Pack 4.
Informazioni
Il numero massimo di tabelle che può essere definito in un'istruzione Transact-SQL SELECT è 256. Questo limite è documentato nella sezione "Specifiche di capacità massima" della documentazione in linea di SQL Server. Questo limite include viste e le tabelle a cui vengono fatto riferimento nell'istruzione SELECT . Inoltre, il limite include le tabelle e le visualizzazioni a cui fa riferimento una vista che è incluso nella query. Di conseguenza, se più di una volta nella query viene fatto riferimento a una tabella o una vista, ogni riferimento nella tabella o la visualizzazione (o le tabelle e viste vengono fatto riferimento nella visualizzazione) conta a fronte di questo limite.

Con questa correzione è stato aumentato il limite massimo di numero di tabelle o viste che vengono fatto riferimento nella query a 260. Di conseguenza, potresti ricevere comunque il messaggio di errore menzionato nella sezione "Sintomi" di questo articolo. Se viene ancora visualizzato il messaggio di errore "Msg 4414", potrebbe essere necessario suddividere la query in modo che un numero inferiore di tabelle o viste viene fatto riferimento nella query. È possibile modificare la definizione della vista viene fatto riferimento nella query problematica per ridurre il numero di tabelle che viene fatto riferimento nella visualizzazione.
Riferimenti
Per ulteriori informazioni su una versione di SQL Server 2000 Service Pack 2 di questo aggiornamento rapido (hotfix), fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
818406FIX: Query Transact-SQL che utilizza visualizzazioni potrebbe non riuscire in modo imprevisto in SQL Server 2000 SP1
T-SQL

Avviso: questo articolo è stato tradotto automaticamente

Proprietà

ID articolo: 828269 - Ultima revisione: 01/17/2015 05:22:28 - Revisione: 2.0

Microsoft SQL Server 2000 Service Pack 3

  • kbnosurvey kbarchive kbmt kbqfe kbsqlserv2000presp4fix kbfix kbbug KB828269 KbMtit
Feedback