FIX: Trasferimento di una visualizzazione che contiene un UDF mediante DTS dati dei esportazione non riuscita con errore 208

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.

300272
Questo articolo è stato archiviato. L’articolo, quindi, viene offerto “così come è” e non verrà più aggiornato.
BUG #: 352081 (RIFERIMENTO)
Sintomi
Tentativo di trasferire una visualizzazione utilizzando la di DTS (Data Transformation Service) Importazione/Esportazione guidata non riesce in presenza delle seguenti condizioni:
  • La visualizzazione include una funzione definita dall'utente (UDF, User Defined Function).
  • Durante la copia di oggetti e dati tra database di SQL Server.
Il testo riportato di seguito è un esempio del messaggio di errore che consente di visualizzare:
Impossibile copiare oggetti da Microsoft SQL Server a Microsoft SQL Server
[Microsoft][Driver ODBC SQL Server][SQL Server]Nome dell'oggetto non valido 'dbo.TestFunc'.
Nota : "dbo.TestFunc" è il nome della funzione definita dall'utente.
Cause
La vista viene viene creata nel database di destinazione prima di UDF, ovvero l'oggetto dipendente. Tutti gli oggetti dipendenti devono prima essere creati.
Risoluzione
Per risolvere il problema, ottenere il service pack più recente per SQL Server 2000. Per ulteriori informazioni, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
290211INF: Come ottenere il Service Pack più recente per SQL Server 2000
Workaround
Tutti gli oggetti che la visualizzazione dipende dalla prima di trasferire e quindi quando si trasferisce la visualizzazione, non includono gli oggetti dipendenti.
Status
Microsoft ha confermato che questo problema riguarda SQL Server 2000. Il problema è stato risolto nel Service Pack 1 per SQL Server 2000.
Informazioni

Procedura per riprodurre il problema

  1. Nel database di origine, eseguire il codice per creare la tabella, la visualizzazione e UDF:
    CREATE FUNCTION TestFunc ()RETURNS INT AS  BEGIN 	RETURN 15ENDgoCREATE TABLE dbo.TestTable ( col1 int NULL )goCREATE VIEW dbo.TestViewASSELECT col1, dbo.TestFunc() AS FuncResults FROM dbo.TestTablego					
  2. A questo punto, è possibile utilizzare la procedura guidata Importazione/Esportazione DTS per copiare tali impostazioni per un altro database di SQL Server.
  3. Selezionare l'opzione Copia oggetti e dati tra database di SQL Server . Lasciare tutte le opzioni script le impostazioni predefinite. Questo non funziona con il seguente messaggio di errore nel file di log per il database di destinazione:
    Stato trasferimento: Creazione di visualizzazioni dal database di destinazione
    [Microsoft][Driver ODBC SQL Server][SQL Server]Nome dell'oggetto non valido 'dbo.TestFunc'.
Per risolvere il problema, copiare la tabella dipendente, TabellaProva e UDF "TestFunc" tra il primo. Copiare quindi la visualizzazione con l'opzione Includi tutti gli oggetti dipendenti deselezionata.
pacchetto 208

Avviso: questo articolo è stato tradotto automaticamente

Proprietà

ID articolo: 300272 - Ultima revisione: 01/16/2015 22:52:50 - Revisione: 3.2

  • Microsoft SQL Server 2000 Standard Edition
  • kbnosurvey kbarchive kbmt kbbug kbfix kbsqlserv2000sp1fix KB300272 KbMtit
Feedback