FIX: L'utilità Osql.exe non esegue completamente uno script Transact-SQL se si avvia il programma da una sessione remota utilizzando un servizio nel background e se quindi si disconnette la sessione di console

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. Nel caso in cui si riscontrino degli errori e si desideri inviare dei suggerimenti, è possibile completare il questionario riportato alla fine del presente articolo.

Clicca qui per visualizzare la versione originale in inglese dell’articolo: 843282
Questo articolo è stato archiviato. L’articolo, quindi, viene offerto “così come è” e non verrà più aggiornato.
Che BUG #: 471.423 (SQL Server 8,0)
Microsoft distribuisce l'aggiornamento rapido di Microsoft SQL Server 2000 come un file scaricabili. Perché gli aggiornamenti rapidi sono cumulativi, ogni nuovo rilascio contiene tutti gli aggiornamenti rapidi e tutta la protezione risolve, la versione precedenti di aggiornamento rapido di SQL Server 2000 quelli ha incluso.
Sintomi
Dopo aver avviato l'utilità (Osql.exe) osql se un utente si disconnette dalla sessione di console nel computer utilizzando un servizio l'Agente SQL Server o il Microsoft Windows Task Scheduler quale nel background, è possibile notare che l'utilità osql interrompe e che non esegue completamente lo script Transact-SQL passato per l'utilità osql. Pur l'utilità osql viene arrestata senza eseguire completamente lo script Transact-SQL, il servizio nel background indica che il processo era riuscito. Ad esempio, l'Agente SQL Server visualizza lo stato come .
Cause
Quando un utente si disconnette dalla sessione di console del computer, il sistema operativo invia il messaggio all'utilità osql. L'utilità osql elabora questo messaggio come se l'utilità osql si esegue nella sessione di console del computer nel modo interattivo. Pertanto si arresta il processo.
Risoluzione

Informazioni Service Pack

Per risolvere questo problema, ottenere il service pack più recente per Microsoft SQL Server 2000. Per ulteriori informazioni, fare clic sul seguente numero di articolo per visualizzare l'articolo del Microsoft Knowledge Base:
290211 Come ottenere il service pack di SQL Server 2000 più recente

Informazioni di correzione

La versione inglese di questa correzione ha gli attributi di file (o gli attributi successivi di file) quelli sono elencati nella seguente tabella. Le date e le volte per questi file sono visualizzate nel formato UTC nell'elenco. Quando si visualizzano le informazioni sul file, viene convertito nella base all'ora locale. Per cercare la differenza fra UTC e fra l'ora locale, utilizzare la scheda disponibile nello strumento Data e ora in Pannello di controllo.
   Date         Time   Version        Size       File name   ------------------------------------------------------------------   19-Jun-2004  02:44  2000.80.954.0    664,128  Autoplt.dll         19-Jun-2004  02:44  2000.80.954.0     78,400  Console.exe         19-Jun-2004  02:44  2000.80.954.0    315,968  Custtask.dll        19-Jun-2004  02:44  2000.80.954.0     33,340  Dbmslpcn.dll        08-Apr-2004  21:42                   786,432  Distmdl.ldf   08-Apr-2004  21:42                 2,359,296  Distmdl.mdf   10-Oct-2003  18:48                       180  Drop_repl_hotfix.sql   19-Jun-2004  02:44  2000.80.954.0  1,905,216  Dtspkg.dll          19-Jun-2004  02:44  2000.80.954.0    528,960  Dtspump.dll         19-Jun-2004  02:44  2000.80.954.0  1,557,052  Dtsui.dll           19-Jun-2004  02:44  2000.80.954.0    639,552  Dtswiz.dll          10-Oct-2003  18:48                   747,927  Instdist.sql   10-Oct-2003  18:48                     1,581  Inst_repl_hotfix.sql   19-Jun-2004  02:44  2000.80.954.0    352,828  Isqlw.exe           19-Jun-2004  02:44  2000.80.954.0     82,492  Itwiz.exe           19-Jun-2004  02:44  2000.80.954.0     90,692  Msgprox.dll         19-May-2004  23:43  8.11.40209.0     209,408  Mssdi98.dll         19-Jun-2004  02:44  2000.80.954.0     62,024  Odsole70.dll        19-Jun-2004  02:45  2000.80.954.0     25,144  Opends60.dll        19-Jun-2004  02:44  2000.80.954.0     57,904  Osql.exe            19-Jun-2004  02:44  2000.80.954.0    279,104  Pfutil80.dll        10-Oct-2003  18:37                   550,780  Procsyst.sql   08-Apr-2004  21:42                    12,305  Qfe469315.sql   08-Apr-2004  21:42                    19,195  Qfe469571.sql   17-Jun-2004  15:12                 1,105,167  Replmerg.sql   19-Jun-2004  02:44  2000.80.954.0    221,768  Replprov.dll        19-Jun-2004  02:44  2000.80.954.0    307,784  Replrec.dll         17-Jun-2004  02:37  2000.80.954.0    159,813  Replres.rll   10-Oct-2003  18:48                 1,087,150  Replsys.sql   10-Oct-2003  18:48                   986,603  Repltran.sql   19-Jun-2004  02:44  2000.80.954.0    287,304  Rinitcom.dll        19-Jun-2004  02:44  2000.80.954.0     78,416  Sdiclnt.dll         19-Jun-2004  02:44  2000.80.954.0     66,112  Semmap.dll          19-Jun-2004  02:44  2000.80.954.0     57,916  Semnt.dll           19-Jun-2004  02:44  2000.80.954.0    492,096  Semobj.dll          17-Jun-2004  03:14  2000.80.954.0    172,032  Semobj.rll   19-Jun-2004  02:44  2000.80.954.0     53,832  Snapshot.exe        12-Mar-2004  03:10                   117,834  Sp3_serv_uni.sql   19-Jun-2004  02:43  2000.80.954.0     28,672  Sqlagent.dll        19-Jun-2004  02:44  2000.80.954.0    311,872  Sqlagent.exe        19-Jun-2004  02:43  2000.80.954.0    168,001  Sqlakw32.dll        19-Jun-2004  02:44  2000.80.954.0     33,344  Sqlctr80.dll        19-Jun-2004  02:44  2000.80.954.0  4,215,360  Sqldmo.dll          19-Jun-2004  02:44                    25,172  Sqldumper.exe       17-Jun-2004  02:24  2000.80.954.0     28,672  Sqlevn70.rll   19-Jun-2004  02:44  2000.80.954.0    180,792  Sqlmap70.dll        19-Jun-2004  02:44  2000.80.954.0    188,992  Sqlmmc.dll          17-Jun-2004  03:22  2000.80.954.0    479,232  Sqlmmc.rll   19-Jun-2004  02:44  2000.80.954.0    401,984  Sqlqry.dll          19-Jun-2004  02:44  2000.80.954.0     57,920  Sqlrepss.dll        19-Jun-2004  02:44  2000.80.954.0  7,581,777  Sqlservr.exe        19-Jun-2004  02:44  2000.80.954.0    590,396  Sqlsort.dll         19-Jun-2004  02:44  2000.80.954.0     45,644  Sqlvdi.dll          19-Jun-2004  02:44  2000.80.954.0    106,588  Sqsrvres.dll        19-Jun-2004  02:44  2000.80.954.0     33,340  Ssmslpcn.dll        19-Jun-2004  02:44  2000.80.954.0     82,492  Ssnetlib.dll        19-Jun-2004  02:44  2000.80.954.0     25,148  Ssnmpn70.dll        19-Jun-2004  02:44  2000.80.954.0    123,456  Stardds.dll         19-Jun-2004  02:44  2000.80.954.0    158,240  Svrnetcn.dll        19-Jun-2004  02:44  2000.80.954.0     76,416  Svrnetcn.exe        19-Jun-2004  02:44  2000.80.954.0     49,228  Ums.dll             19-Jun-2004  02:44  2000.80.954.0     98,872  Xpweb70.dll      				
Nota: A causa delle dipendenze fra i file, anche la correzione più recente che contiene questi file può contenere i file aggiuntivi.
Status
Microsoft ha confermato che ciò è un problema nei prodotti Microsoft elencati nella sezione da "Applicare a". Questo problema veniva corretto per la prima volta in Service Pack 4 Server 2000 di Microsoft SQL.
Informazioni

Procedure per riprodurre il problema

  1. Aprire una sessione client di Terminal Server di un computer.
  2. Avviare il Blocco note.
  3. In Blocco note, scrivere uno script Transact-SQL eseguito per un periodo di tempo prolungato. Ad esempio, utilizzare il seguente script Transact-SQL che ha un ciclo infinito:
    declare @variable intset @variable= 2while (@variable > 1)beginprint @variableset @variable= @variable + 1end
  4. Salvare lo script come \Test.sql .

    InstallationDrive Nota è un segnaposto per l'unità predefinita di installazione del computer.
  5. Nella sessione client di Terminal Server, avviare l'utilità osql utilizzando uno dei seguenti metodi:
    • Utilità di pianificazione Usa Windows
      1. In Pannello di controllo, aprire Operazioni pianificate.
      2. Dal menu , scegliere e quindi scegliere l' pianificata.
      3. Fare doppio clic su per aprire la finestra di dialogo .
      4. Nella casella , digitare il seguente comando:
        "InstallationDrive:\Program Files\Microsoft SQL Server\80\Tools\Binn\Osql.exe" -E -i InstallationDrive:\Test.sql
        InstallationDrive Nota è un segnaposto per l'unità predefinita di installazione del computer.
      5. Nella casella , digitare InstallationDrive:\Program Files\Microsoft SQL Server\80\Tools\Binn.
      6. Nella scheda , modificare gli intervalli di pianificazione e quindi scegliere .
      7. Nella casella di dialogo , digitare l'account utente e la password dell'account di accesso e quindi scegliere .
      8. Fare clic con il pulsante destro del processo che si è creato e quindi scegliere .
      9. Mentre si esegue l'operazione pianificata, accedere alla sessione di console e quindi si disconnettere dalla sessione di console nel computer.
    • Utilizzare Agente SQL Server
      1. Avviare SQL Server Enterprise Manager.
      2. Espandere l'istanza registrata di uno SQL Server.
      3. Con il nome di server, espandere e quindi espandere.
      4. , fare clic con il pulsante destro di e quindi scegliere .
      5. Nella scheda , digitare un nome per il processo nella casella .
      6. Nella scheda , scegliere il Nuovo.
      7. Nella scheda , digitare un nome per il passaggio nella casella .
      8. Nell'elenco , selezionare .
      9. Nella casella , digitare "InstallationDrive:\Program Files\Microsoft SQL Server\80\Tools\Binn\Osql.exe" -E -i InstallationDrive:\Test.sql -o InstallationDrive:\Test.txt , e quindi sceglie .

        InstallationDrive Nota è un segnaposto per l'unità predefinita di installazione del computer.
      10. In Proprietà nuovo processo Finestra di dialogo la casella, scegliere .
      11. Fare clic con il pulsante destro del processo che si è creato e quindi scegliere .
      12. Mentre si esegue il processo, accedere alla sessione di console e quindi si disconnettere dalla sessione di console nel computer.
    Si nota che l'operazione pianificata o il processo di SQL Server Agent interrompe quando si disconnette dalla sessione di console del computer. Si nota inoltre che l'operazione pianificata o l'Agente SQL Server segnala un successo dello stato del processo.
Riferimenti
Per ulteriori informazioni, visitare il seguente sito Web Network (MSDN) Microsoft Developer:

Avviso: questo articolo è stato tradotto automaticamente

Proprietà

ID articolo: 843282 - Ultima revisione: 12/08/2015 07:32:05 - Revisione: 3.2

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 Enterprise Edition, Microsoft SQL Server 2000 Workgroup Edition, Microsoft SQL Server 2000 Desktop Engine (Windows), Microsoft SQL Server 2000 Developer Edition, Microsoft SQL Server 2000 Enterprise Edition 64-bit

  • kbnosurvey kbarchive kbbug kbfix kbkern32dll kbqfe kbsqlserv2000presp4fix kbhotfixserver KB843282 KbMtit kbmt
Feedback