Freigeben über


ObjectContext.ExecuteStoreCommand(String, Object[]) Methode

Definition

Führt einen beliebigen Befehl direkt für die Datenquelle mithilfe der vorhandenen Verbindung aus.

public:
 int ExecuteStoreCommand(System::String ^ commandText, ... cli::array <System::Object ^> ^ parameters);
public int ExecuteStoreCommand(string commandText, params object[] parameters);
member this.ExecuteStoreCommand : string * obj[] -> int
Public Function ExecuteStoreCommand (commandText As String, ParamArray parameters As Object()) As Integer

Parameter

commandText
String

Der auszuführende Befehl in der nativen Sprache der Datenquelle.

parameters
Object[]

Ein Array von Parametern, die an den Befehl übergeben werden sollen.

Gibt zurück

Die Anzahl der betroffenen Zeilen.

Hinweise

Die Verwendung parametrisierter Befehle hilft beim Schutz vor SQL Injection-Angriffen, bei denen ein Angreifer einen SQL-Befehl in eine SQL-Anweisung einschleust, der die Sicherheit auf dem Server gefährdet. Parametrisierte Befehle schützen vor einem SQL-Einfügeangriff, indem sichergestellt wird, dass von einer externen Quelle empfangene Werte nur als Werte und nicht als Teil der SQL-Anweisung übergeben werden. Daher werden in einen Wert eingefügte SQL-Befehle nicht an der Datenquelle ausgeführt. Stattdessen werden sie nur als Parameterwert ausgewertet. Zusätzlich zu den Sicherheitsvorteilen bieten parametrisierte Befehle eine bequeme Methode zum Organisieren von Werten, die mit einer SQL-Anweisung oder an eine gespeicherte Prozedur übergeben werden.

Der parameters Wert kann ein Array von DbParameter Objekten oder ein Array von Parameterwerten sein. Wenn nur Werte angegeben werden, wird ein Array von DbParameter Objekten basierend auf der Reihenfolge der Werte im Array erstellt.

Der Speicherbefehl wird im Kontext der aktuellen Transaktion ausgeführt, wenn eine aktuelle Transaktion vorhanden ist.

Gilt für: