Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Problem mit dem SQL Server-Ausgabeparameter

Die Verwirrung ist bis zu einem gewissen Grad gerechtfertigt - und andere RDBMS wie Oracle haben Parameter für gespeicherte Prozeduren, die vom Typ IN sein können (nur Eingabe), OUT (nur Ausgabe) oder INOUT (beide Wege - "Pass by Reference"-Parametertyp).

SQL Server ist hier etwas schlampig, da er den Parameter als OUTPUT kennzeichnet , aber eigentlich bedeutet das INPUT /OUTPUT - Es bedeutet im Grunde nur, dass die gespeicherte Prozedur die Möglichkeit hat, einen Wert von ihrem Aufruf in diesem Parameter zurückzugeben.

Also ja - obwohl es OUTPUT heißt Parameter, es ist eher ein INPUT /OUTPUT Parameter und diese IN , INOUT , OUT wie in Oracle existieren nicht in SQL Server (in T-SQL).