Domanda

Ecco la mia dichiarazione:

DELETE FROM table1 USCITA deleted.col1, deleted.col2 INTO view1;

Mi dà questo errore:

L'obiettivo 'view1' della clausola OUTPUT INTO non può essere vista o di tabella comune.

La vista è semplice e aggiornabile. Perché non è possibile inserire in una vista aggiornabile utilizzando la clausola OUTPUT?

È stato utile?

Soluzione

Da MSDN - :

"La clausola OUTPUT non è supportata nei seguenti dichiarazioni:

  • istruzioni DML che fanno riferimento a una vista partizionata locale, viste partizionate distribuite o tabelle remote.
  • istruzioni INSERT che contengono una dichiarazione eseguire.
  • predicati full-text non sono ammessi nella clausola OUTPUT quando il livello di compatibilità del database è impostato su 100.
  • La clausola OUTPUT INTO non può essere usato per inserire in una vista, o una funzione set di righe.
  • Una funzione definita dall'utente non può essere creato se contiene una clausola OUTPUT INTO che ha una tabella come obiettivo. "
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a dba.stackexchange
scroll top