Parameterübergabe in Ansichten in SQL
Im Gegensatz zu gespeicherten Prozeduren erlauben Ansichten in SQL Server keine direkte Parameterübergabe. Dies kann eine Einschränkung darstellen, wenn Daten basierend auf benutzerdefinierten Kriterien gefiltert werden müssen.
Ein Lösungsversuch für dieses Problem besteht darin, eine Ansicht mit einem Parameter zu erstellen, wie unten gezeigt:
create or replace view v_emp(eno number) as select * from emp where emp_id=&eno;
Dies funktioniert jedoch nicht in SQL Server.
Eine alternative Lösung: Gespeicherte Funktionen
An Ein alternativer Ansatz zur Übergabe von Parametern an ansichtsähnliche Funktionen besteht darin, eine gespeicherte Funktion zu erstellen. Eine gespeicherte Funktion kann mit Eingabeparametern definiert werden und kann eine Tabelle als Ergebnismenge zurückgeben.
Hier ist ein Beispiel einer gespeicherten Funktion, die als parametrisierte Ansicht fungieren kann:
CREATE FUNCTION v_emp (@pintEno INT) RETURNS TABLE AS RETURN SELECT * FROM emp WHERE emp_id=@pintEno;
Dies Die gespeicherte Funktion nimmt einen ganzzahligen @pintEno-Parameter an und gibt eine Tabelle mit Mitarbeitern zurück, die dieser ID entsprechen.
Um die gespeicherte Funktion zu verwenden, können Sie sie wie folgt aufrufen: Ansicht:
SELECT * FROM v_emp(10)
Dadurch werden alle Mitarbeiter mit einer emp_id von 10 zurückgegeben.
Das obige ist der detaillierte Inhalt vonWie kann ich Parameter an Ansichten in SQL Server übergeben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!