sql >> Database >  >> RDS >> Sqlserver

OUTPUT gebruiken na INSERT om de waarde van de identiteitskolom in een variabele (niet-tabelwaarde) te krijgen

Onthoud dat de waarde van de uitvoerclausule is dat deze meer dan één record en meer dan één veld kan retourneren. U kunt dus zowel de natuurlijke sleutel als de identiteit voor een set gegevens uitvoeren, zodat u ook de verzamelingenleer kunt gebruiken om meerdere records in onderliggende tabellen in te voegen. Output is erg krachtig en het zal de moeite waard zijn om eraan te wennen.

Er is momenteel een bug in scope_identity() (zie link:http://connect.microsoft.com/SQLServer/feedback/details/328811/scope-identity-sometimes-returns-incorrect-value ) die Microsoft niet van plan is te repareren. Dat zou je een idee moeten geven of je output moet gebruiken voor nieuwe ontwikkeling, ook al is het een beetje onhandiger voor afzonderlijke records.



  1. Migreren van Maxscale naar de ProxySQL Load Balancer

  2. PostgreSQL:vind zinnen die het dichtst bij een bepaalde zin liggen

  3. Roep opgeslagen procedure aan met verzameling van records met behulp van callproc in python

  4. Hoe de datumstijl in PostgreSQL te veranderen?