Pourquoi peut la cible de la clause INTO OUTPUT pas une vue?
-
16-10-2019 - |
Question
Voici ma déclaration:
DELETE FROM table1 SORTIE deleted.col1, deleted.col2 EN view1;
Il me donne cette erreur:
La cible « view1 » de la sortie dans l'article ne peut pas être une vue ou une expression de table commune.
La vue est simple et actualisable. Pourquoi ne puis-je pas insérer dans une vue actualisable en utilisant la clause SORTIE?
La solution
De MSDN - clause de sortie :
"La clause SORTIE est pas pris en charge dans les énoncés suivants:
- DML qui font référence à des vues partitionnées locales, vues partitionnées distribuées, ou des tables distantes.
- instructions INSERT qui contiennent une instruction EXECUTE.
- Les prédicats de texte ne sont pas autorisés dans la clause de sortie lorsque le niveau de compatibilité de la base de données est réglé sur 100.
- La clause OUTPUT INTO ne peut pas être utilisé pour insérer dans une vue, ou la fonction rowset.
- Une fonction définie par l'utilisateur ne peut pas être créé si elle contient une clause OUTPUT INTO qui a une table comme cible. «
Licencié sous: CC-BY-SA avec attribution
Non affilié à dba.stackexchange