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
Параметры
- sql
Тип: System.String
Строка команды.
- parameters
Тип: System.Object[]
Параметры, подставляемые в строку команды.
Возвращаемое значение
Тип: System.Int32
Результат, возвращаемый базой данных после выполнения команды.
Примечания
Если отсутствует локальная или внешняя транзакция, то для выполнения команды будет использоваться новая транзакция.