Lenguaje

RelationalDatabaseFacadeExtensions.ExecuteSqlRaw Método

Definición

Sobrecargas

Nombre Description
ExecuteSqlRaw(DatabaseFacade, String, IEnumerable<Object>)

Ejecuta el código SQL especificado en la base de datos y devuelve el número de filas afectadas.

ExecuteSqlRaw(DatabaseFacade, String, Object[])

Ejecuta el código SQL especificado en la base de datos y devuelve el número de filas afectadas.

ExecuteSqlRaw(DatabaseFacade, String, IEnumerable<Object>)

Source:
RelationalDatabaseFacadeExtensions.cs
Source:
RelationalDatabaseFacadeExtensions.cs
Source:
RelationalDatabaseFacadeExtensions.cs
Source:
RelationalDatabaseFacadeExtensions.cs
Source:
RelationalDatabaseFacadeExtensions.cs
Source:
RelationalDatabaseFacadeExtensions.cs
Source:
RelationalDatabaseFacadeExtensions.cs
Source:
RelationalDatabaseFacadeExtensions.cs
Source:
RelationalDatabaseFacadeExtensions.cs

Ejecuta el código SQL especificado en la base de datos y devuelve el número de filas afectadas.

public static int ExecuteSqlRaw(this Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade databaseFacade, string sql, System.Collections.Generic.IEnumerable<object?> parameters);
public static int ExecuteSqlRaw(this Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade databaseFacade, string sql, System.Collections.Generic.IEnumerable<object> parameters);
static member ExecuteSqlRaw : Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade * string * seq<obj> -> int
<Extension()>
Public Function ExecuteSqlRaw (databaseFacade As DatabaseFacade, sql As String, parameters As IEnumerable(Of Object)) As Integer

Parámetros

databaseFacade
DatabaseFacade

DatabaseFacade para el contexto.

sql
String

SQL que se va a ejecutar.

parameters
IEnumerable<Object>

Parámetros que se van a usar con SQL.

Devoluciones

Número de filas afectadas.

Comentarios

Tenga en cuenta que este método no inicia una transacción. Para usar este método con una transacción, primero llame a BeginTransaction(DatabaseFacade, IsolationLevel) o UseTransaction.

Tenga en cuenta que este método no usa el actual ExecutionStrategy , ya que es posible que SQL no sea idempotente y no se ejecute en una transacción. Se ExecutionStrategy puede usar explícitamente, asegurándose de usar también una transacción si SQL no es idempotente.

Al igual que con cualquier API que acepte SQL, es importante parametrizar cualquier entrada de usuario para protegerse frente a un ataque por inyección de CÓDIGO SQL. Puede incluir marcadores de posición de parámetros en la cadena de consulta SQL y, a continuación, proporcionar valores de parámetro como argumentos adicionales. Los valores de parámetro que proporcione se convertirán automáticamente en un DbParameter.

Sin embargo, nunca pase una cadena concatenada o interpolada ($"") con valores proporcionados por el usuario no validados en este método. Si lo hace, puede exponer la aplicación a ataques por inyección de código SQL. Para usar la sintaxis de cadena interpolada, considere la posibilidad de usar ExecuteSql(DatabaseFacade, FormattableString) para crear parámetros.

Consulte Ejecución de comandos SQL sin procesar con EF Core para obtener más información y ejemplos.

Se aplica a

ExecuteSqlRaw(DatabaseFacade, String, Object[])

Source:
RelationalDatabaseFacadeExtensions.cs
Source:
RelationalDatabaseFacadeExtensions.cs
Source:
RelationalDatabaseFacadeExtensions.cs
Source:
RelationalDatabaseFacadeExtensions.cs
Source:
RelationalDatabaseFacadeExtensions.cs
Source:
RelationalDatabaseFacadeExtensions.cs
Source:
RelationalDatabaseFacadeExtensions.cs
Source:
RelationalDatabaseFacadeExtensions.cs
Source:
RelationalDatabaseFacadeExtensions.cs

Ejecuta el código SQL especificado en la base de datos y devuelve el número de filas afectadas.

public static int ExecuteSqlRaw(this Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade databaseFacade, string sql, params object?[] parameters);
public static int ExecuteSqlRaw(this Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade databaseFacade, string sql, params object[] parameters);
static member ExecuteSqlRaw : Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade * string * obj[] -> int
<Extension()>
Public Function ExecuteSqlRaw (databaseFacade As DatabaseFacade, sql As String, ParamArray parameters As Object()) As Integer

Parámetros

databaseFacade
DatabaseFacade

DatabaseFacade para el contexto.

sql
String

SQL que se va a ejecutar.

parameters
Object[]

Parámetros que se van a usar con SQL.

Devoluciones

Número de filas afectadas.

Comentarios

Tenga en cuenta que este método no inicia una transacción. Para usar este método con una transacción, primero llame a BeginTransaction(DatabaseFacade, IsolationLevel) o UseTransaction.

Tenga en cuenta que este método no usa el actual ExecutionStrategy , ya que es posible que SQL no sea idempotente y no se ejecute en una transacción. Se ExecutionStrategy puede usar explícitamente, asegurándose de usar también una transacción si SQL no es idempotente.

Al igual que con cualquier API que acepte SQL, es importante parametrizar cualquier entrada de usuario para protegerse frente a un ataque por inyección de CÓDIGO SQL. Puede incluir marcadores de posición de parámetros en la cadena de consulta SQL y, a continuación, proporcionar valores de parámetro como argumentos adicionales. Los valores de parámetro que proporcione se convertirán automáticamente en un DbParameter.

Sin embargo, nunca pase una cadena concatenada o interpolada ($"") con valores proporcionados por el usuario no validados en este método. Si lo hace, puede exponer la aplicación a ataques por inyección de código SQL. Para usar la sintaxis de cadena interpolada, considere la posibilidad de usar ExecuteSql(DatabaseFacade, FormattableString) para crear parámetros.

Consulte Ejecución de comandos SQL sin procesar con EF Core para obtener más información y ejemplos.

Se aplica a