RelationalDatabaseFacadeExtensions.ExecuteSqlCommand 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
| 名称 | 说明 |
|---|---|
| ExecuteSqlCommand(DatabaseFacade, FormattableString) |
已过时.
针对数据库执行给定的 SQL,并返回受影响的行数。 请注意,此方法不会启动事务。 若要将此方法与事务一起使用,请首先调用 BeginTransaction(DatabaseFacade, IsolationLevel) 或 UseTransaction(DatabaseFacade, DbTransaction)。 请注意,此方法不使用当前 ExecutionStrategy 值,因为 SQL 可能不是幂等的,也不会在事务中运行。 可以显式使用 ExecutionStrategy,确保在 SQL 不是幂等的情况下也使用事务。
与接受 SQL 的任何 API 一样,必须参数化任何用户输入以防止 SQL 注入攻击。 可以在 SQL 查询字符串中包含参数位置持有者,然后将参数值作为其他参数提供。 你提供的任何参数值将自动转换为 DbParameter - |
| ExecuteSqlCommand(DatabaseFacade, RawSqlString, IEnumerable<Object>) |
已过时.
针对数据库执行给定的 SQL,并返回受影响的行数。 请注意,此方法不会启动事务。 若要将此方法与事务一起使用,请首先调用 BeginTransaction(DatabaseFacade, IsolationLevel) 或 UseTransaction(DatabaseFacade, DbTransaction)。 请注意,此方法不使用当前 ExecutionStrategy 值,因为 SQL 可能不是幂等的,也不会在事务中运行。 可以显式使用 ExecutionStrategy,确保在 SQL 不是幂等的情况下也使用事务。 与接受 SQL 的任何 API 一样,必须参数化任何用户输入以防止 SQL 注入攻击。 可以在 SQL 查询字符串中包含参数位置持有者,然后将参数值作为其他参数提供。 你提供的任何参数值将自动转换为 DbParameter。 还可以考虑使用 ExecuteSqlInterpolated 来使用内插字符串语法来创建参数。 |
| ExecuteSqlCommand(DatabaseFacade, RawSqlString, Object[]) |
已过时.
针对数据库执行给定的 SQL,并返回受影响的行数。 请注意,此方法不会启动事务。 若要将此方法与事务一起使用,请首先调用 BeginTransaction(DatabaseFacade, IsolationLevel) 或 UseTransaction(DatabaseFacade, DbTransaction)。 请注意,此方法不使用当前 ExecutionStrategy 值,因为 SQL 可能不是幂等的,也不会在事务中运行。 可以显式使用 ExecutionStrategy,确保在 SQL 不是幂等的情况下也使用事务。
与接受 SQL 的任何 API 一样,必须参数化任何用户输入以防止 SQL 注入攻击。 可以在 SQL 查询字符串中包含参数位置持有者,然后将参数值作为其他参数提供。 你提供的任何参数值将自动转换为 DbParameter - |
| ExecuteSqlCommand(DatabaseFacade, String, Object[]) |
ExecuteSqlCommand(DatabaseFacade, FormattableString)
注意
For the execution of SQL queries using plain strings, use ExecuteSqlRaw instead. For the execution of SQL queries using interpolated string syntax to create parameters, use ExecuteSqlInterpolated instead.
针对数据库执行给定的 SQL,并返回受影响的行数。
请注意,此方法不会启动事务。 若要将此方法与事务一起使用,请首先调用 BeginTransaction(DatabaseFacade, IsolationLevel) 或 UseTransaction(DatabaseFacade, DbTransaction)。
请注意,此方法不使用当前 ExecutionStrategy 值,因为 SQL 可能不是幂等的,也不会在事务中运行。 可以显式使用 ExecutionStrategy,确保在 SQL 不是幂等的情况下也使用事务。
与接受 SQL 的任何 API 一样,必须参数化任何用户输入以防止 SQL 注入攻击。 可以在 SQL 查询字符串中包含参数位置持有者,然后将参数值作为其他参数提供。 你提供的任何参数值将自动转换为 DbParameter - context.Database.ExecuteSqlCommand($"SELECT * FROM [dbo].[SearchBlogs]({userSuppliedSearchTerm})")。
public static int ExecuteSqlCommand(this Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade databaseFacade, FormattableString sql);
[System.Obsolete("For the execution of SQL queries using plain strings, use ExecuteSqlRaw instead. For the execution of SQL queries using interpolated string syntax to create parameters, use ExecuteSqlInterpolated instead.")]
public static int ExecuteSqlCommand(this Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade databaseFacade, FormattableString sql);
static member ExecuteSqlCommand : Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade * FormattableString -> int
[<System.Obsolete("For the execution of SQL queries using plain strings, use ExecuteSqlRaw instead. For the execution of SQL queries using interpolated string syntax to create parameters, use ExecuteSqlInterpolated instead.")>]
static member ExecuteSqlCommand : Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade * FormattableString -> int
<Extension()>
Public Function ExecuteSqlCommand (databaseFacade As DatabaseFacade, sql As FormattableString) As Integer
参数
- databaseFacade
- DatabaseFacade
上下文 DatabaseFacade 。
表示具有参数的 SQL 查询的内插字符串。
返回
受影响的行数。
- 特性
适用于
ExecuteSqlCommand(DatabaseFacade, RawSqlString, IEnumerable<Object>)
注意
For the execution of SQL queries using plain strings, use ExecuteSqlRaw instead. For the execution of SQL queries using interpolated string syntax to create parameters, use ExecuteSqlInterpolated instead.
针对数据库执行给定的 SQL,并返回受影响的行数。
请注意,此方法不会启动事务。 若要将此方法与事务一起使用,请首先调用 BeginTransaction(DatabaseFacade, IsolationLevel) 或 UseTransaction(DatabaseFacade, DbTransaction)。
请注意,此方法不使用当前 ExecutionStrategy 值,因为 SQL 可能不是幂等的,也不会在事务中运行。 可以显式使用 ExecutionStrategy,确保在 SQL 不是幂等的情况下也使用事务。
与接受 SQL 的任何 API 一样,必须参数化任何用户输入以防止 SQL 注入攻击。 可以在 SQL 查询字符串中包含参数位置持有者,然后将参数值作为其他参数提供。 你提供的任何参数值将自动转换为 DbParameter。 还可以考虑使用 ExecuteSqlInterpolated 来使用内插字符串语法来创建参数。
public static int ExecuteSqlCommand(this Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade databaseFacade, Microsoft.EntityFrameworkCore.RawSqlString sql, System.Collections.Generic.IEnumerable<object> parameters);
[System.Obsolete("For the execution of SQL queries using plain strings, use ExecuteSqlRaw instead. For the execution of SQL queries using interpolated string syntax to create parameters, use ExecuteSqlInterpolated instead.")]
public static int ExecuteSqlCommand(this Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade databaseFacade, Microsoft.EntityFrameworkCore.RawSqlString sql, System.Collections.Generic.IEnumerable<object> parameters);
static member ExecuteSqlCommand : Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade * Microsoft.EntityFrameworkCore.RawSqlString * seq<obj> -> int
[<System.Obsolete("For the execution of SQL queries using plain strings, use ExecuteSqlRaw instead. For the execution of SQL queries using interpolated string syntax to create parameters, use ExecuteSqlInterpolated instead.")>]
static member ExecuteSqlCommand : Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade * Microsoft.EntityFrameworkCore.RawSqlString * seq<obj> -> int
<Extension()>
Public Function ExecuteSqlCommand (databaseFacade As DatabaseFacade, sql As RawSqlString, parameters As IEnumerable(Of Object)) As Integer
参数
- databaseFacade
- DatabaseFacade
上下文 DatabaseFacade 。
- sql
- RawSqlString
要执行的 SQL。
- parameters
- IEnumerable<Object>
要用于 SQL 的参数。
返回
受影响的行数。
- 特性
适用于
ExecuteSqlCommand(DatabaseFacade, RawSqlString, Object[])
注意
For the execution of SQL queries using plain strings, use ExecuteSqlRaw instead. For the execution of SQL queries using interpolated string syntax to create parameters, use ExecuteSqlInterpolated instead.
针对数据库执行给定的 SQL,并返回受影响的行数。
请注意,此方法不会启动事务。 若要将此方法与事务一起使用,请首先调用 BeginTransaction(DatabaseFacade, IsolationLevel) 或 UseTransaction(DatabaseFacade, DbTransaction)。
请注意,此方法不使用当前 ExecutionStrategy 值,因为 SQL 可能不是幂等的,也不会在事务中运行。 可以显式使用 ExecutionStrategy,确保在 SQL 不是幂等的情况下也使用事务。
与接受 SQL 的任何 API 一样,必须参数化任何用户输入以防止 SQL 注入攻击。 可以在 SQL 查询字符串中包含参数位置持有者,然后将参数值作为其他参数提供。 你提供的任何参数值将自动转换为 DbParameter - context.Database.ExecuteSqlCommand("SELECT * FROM [dbo].[SearchBlogs]({0})", userSuppliedSearchTerm)。
还可以考虑使用 ExecuteSqlInterpolated 来使用内插字符串语法来创建参数。
public static int ExecuteSqlCommand(this Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade databaseFacade, Microsoft.EntityFrameworkCore.RawSqlString sql, params object[] parameters);
[System.Obsolete("For the execution of SQL queries using plain strings, use ExecuteSqlRaw instead. For the execution of SQL queries using interpolated string syntax to create parameters, use ExecuteSqlInterpolated instead.")]
public static int ExecuteSqlCommand(this Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade databaseFacade, Microsoft.EntityFrameworkCore.RawSqlString sql, params object[] parameters);
static member ExecuteSqlCommand : Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade * Microsoft.EntityFrameworkCore.RawSqlString * obj[] -> int
[<System.Obsolete("For the execution of SQL queries using plain strings, use ExecuteSqlRaw instead. For the execution of SQL queries using interpolated string syntax to create parameters, use ExecuteSqlInterpolated instead.")>]
static member ExecuteSqlCommand : Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade * Microsoft.EntityFrameworkCore.RawSqlString * obj[] -> int
<Extension()>
Public Function ExecuteSqlCommand (databaseFacade As DatabaseFacade, sql As RawSqlString, ParamArray parameters As Object()) As Integer
参数
- databaseFacade
- DatabaseFacade
上下文 DatabaseFacade 。
- sql
- RawSqlString
要执行的 SQL。
- parameters
- Object[]
要用于 SQL 的参数。
返回
受影响的行数。
- 特性
适用于
ExecuteSqlCommand(DatabaseFacade, String, Object[])
public static int ExecuteSqlCommand(this Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade databaseFacade, string sql, params object[] parameters);
static member ExecuteSqlCommand : Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade * string * obj[] -> int
<Extension()>
Public Function ExecuteSqlCommand (databaseFacade As DatabaseFacade, sql As String, ParamArray parameters As Object()) As Integer
参数
- databaseFacade
- DatabaseFacade
- sql
- String
- parameters
- Object[]