CommandType.StoredProcedure vs. CommandType.Text bei der Ausführung gespeicherter Prozeduren
Das Ausführen gespeicherter Prozeduren in C# mit CommandType.StoredProcedure wirft die Frage auf: Ist das so? notwendig? Bietet es Vorteile gegenüber der Verwendung von CommandType.Text? In diesem Artikel werden die Vorteile beider Methoden untersucht.
Standardparametrisierung
Laut einer Blog-Studie parametrisiert SQL Server Anweisungen in sp_executesql automatisch, wenn CommandType.Text verwendet wird. Im Gegensatz dazu parametrisiert CommandType.StoredProcedure Prozeduren explizit, wodurch die Arbeitslast der Datenbank verringert und somit die Leistung verbessert wird.
Tests und Ergebnisse
Mit SQL Server Profiler haben wir gespeicherte Prozeduren getestet wird mit beiden CommandType-Varianten aufgerufen. In beiden Fällen wurden RPC-Aufrufe generiert.
CommandType.Text
exec sp_executesql N'dbo.Test',N'@Text1 nvarchar(5),@Text2 nvarchar(5)',@Text1=N'Text1',@Text2=N'Text2'
CommandType.StoredProcedure
exec dbo.Test @Text1=N'Text1',@Text2=N'Text2'
Fazit
Um die beste Leistung und Parameterflexibilität zu erzielen, verwenden Sie daher CommandType.StoredProcedure, wenn Sie gespeicherte Prozeduren in C# ausführen.
Das obige ist der detaillierte Inhalt vonCommandType.StoredProcedure oder CommandType.Text: Was ist besser für die Ausführung gespeicherter Prozeduren in C#?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!