Freigeben über


Database.ExecuteSqlCommand-Methode (TransactionalBehavior, String, Object[])

[Diese Seite bezieht sich auf Entity Framework Version 6. Die neueste Version ist als 'Entity Framework' NuGet-Paket verfügbar. Weitere Informationen zu Entity Framework finden Sie unter msdn.com/data/ef.]

Führt den angegebenen DDL-/DML-Befehl für die Datenbank aus. Wie bei allen APIs, die SQL akzeptieren, müssen Sie darauf achten, alle Benutzereingaben zum Schutz vor SQL-Injection-Angriffen zu parametrisieren. Sie können in der SQL-Abfragezeichenfolge Platzhalter für Parameter einschließen und die Parameterwerte anschließend als zusätzliche Argumente angeben. Alle angegebenen Parameterwerte werden automatisch in einen DbParameter konvertiert. context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); Als Alternative können Sie auch einen DbParameter erstellen und an SqlQuery übergeben. Auf diese Weise können Sie benannte Parameter in der SQL-Abfragezeichenfolge verwenden. context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

Namespace:  System.Data.Entity
Assembly:  EntityFramework (in EntityFramework.dll)

Syntax

'Declaration
Public Function ExecuteSqlCommand ( _
    transactionalBehavior As TransactionalBehavior, _
    sql As String, _
    ParamArray parameters As Object() _
) As Integer
'Usage
Dim instance As Database 
Dim transactionalBehavior As TransactionalBehavior 
Dim sql As String 
Dim parameters As Object()
Dim returnValue As Integer 

returnValue = instance.ExecuteSqlCommand(transactionalBehavior, _
    sql, parameters)
public int ExecuteSqlCommand(
    TransactionalBehavior transactionalBehavior,
    string sql,
    params Object[] parameters
)
public:
int ExecuteSqlCommand(
    TransactionalBehavior transactionalBehavior, 
    String^ sql, 
    ... array<Object^>^ parameters
)
member ExecuteSqlCommand : 
        transactionalBehavior:TransactionalBehavior * 
        sql:string * 
        parameters:Object[] -> int
public function ExecuteSqlCommand(
    transactionalBehavior : TransactionalBehavior, 
    sql : String, 
    ... parameters : Object[]
) : int

Parameter

  • parameters
    Typ: System.Object[]
    Die Parameter, die auf die Befehlszeichenfolge angewendet werden sollen.

Rückgabewert

Typ: System.Int32
Das nach Ausführen des Befehls von der Datenbank zurückgegebene Ergebnis.

Siehe auch

Verweis

Database Klasse

ExecuteSqlCommand-Überladung

System.Data.Entity-Namespace