Поделиться через


Database.ExecuteSqlCommand - метод (String, Object[])

[Эта страница относится к документации к Entity Framework 6. Последняя версия доступна в составе пакета Entity Framework NuGet. Дополнительные сведения об Entity Framework см. в разделе msdn.com/data/ef.]

Выполняет указанную команду DDL/DML применительно к базе данных. Как и для любого API, принимающего SQL, важно параметризовать все пользовательские входные данные для защиты от атаки путем внедрения кода SQL. Можно включать в строку SQL-запроса местозаполнители параметров и затем предоставлять значения параметров как дополнительные аргументы. Все предоставляемые значения параметров будут автоматически преобразовываться в DbParameter. context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); также можно создать DbParameter и предоставить его в SqlQuery. Это позволяет использовать в строке запроса SQL именованные параметры. context.Database.ExecuteSqlCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

Пространство имен:  System.Data.Entity
Сборка:  EntityFramework (в EntityFramework.dll)

Синтаксис

'Декларация
Public Function ExecuteSqlCommand ( _
    sql As String, _
    ParamArray parameters As Object() _
) As Integer
'Применение
Dim instance As Database 
Dim sql As String 
Dim parameters As Object()
Dim returnValue As Integer 

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

Параметры

  • parameters
    Тип: System.Object[]
    Параметры, подставляемые в строку команды.

Возвращаемое значение

Тип: System.Int32
Результат, возвращаемый базой данных после выполнения команды.

Примечания

Если отсутствует локальная или внешняя транзакция, то для выполнения команды будет использоваться новая транзакция.

См. также

Справочник

Database Класс

ExecuteSqlCommand - перегрузка

System.Data.Entity - пространство имен