RelationalDatabaseFacadeExtensions.ExecuteSqlCommand 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
오버로드
ExecuteSqlCommand(DatabaseFacade, FormattableString) |
사용되지 않음.
데이터베이스에 대해 지정된 SQL을 실행하고 영향을 받는 행 수를 반환합니다. 이 메서드는 트랜잭션을 시작하지 않습니다. 트랜잭션에서 이 메서드를 사용하려면 먼저 또는 를 호출 BeginTransaction(DatabaseFacade, IsolationLevel) 합니다 UseTransaction(DatabaseFacade, DbTransaction). SQL이 idempotent가 아니고 트랜잭션에서 실행되지 않으므로 현재 ExecutionStrategy 는 이 메서드에서 사용되지 않습니다. ExecutionStrategy를 명시적으로 사용할 수 있으므로 SQL이 idempotent가 아닌 경우에도 트랜잭션을 사용해야 합니다.
SQL을 허용하는 모든 API와 마찬가지로 SQL 삽입 공격으로부터 보호하기 위해 사용자 입력을 매개 변수화하는 것이 중요합니다. SQL 쿼리 문자열에 매개 변수 자리 표시자를 포함하고 매개 변수 값을 추가 인수로 제공할 수 있습니다. 사용자가 제공하는 모든 매개 변수 값은 자동으로 DbParameter - |
ExecuteSqlCommand(DatabaseFacade, RawSqlString, IEnumerable<Object>) |
사용되지 않음.
데이터베이스에 대해 지정된 SQL을 실행하고 영향을 받는 행 수를 반환합니다. 이 메서드는 트랜잭션을 시작하지 않습니다. 트랜잭션에서 이 메서드를 사용하려면 먼저 또는 를 호출 BeginTransaction(DatabaseFacade, IsolationLevel) 합니다 UseTransaction(DatabaseFacade, DbTransaction). SQL이 idempotent가 아니고 트랜잭션에서 실행되지 않으므로 현재 ExecutionStrategy 는 이 메서드에서 사용되지 않습니다. ExecutionStrategy를 명시적으로 사용할 수 있으므로 SQL이 idempotent가 아닌 경우에도 트랜잭션을 사용해야 합니다. SQL을 허용하는 모든 API와 마찬가지로 SQL 삽입 공격으로부터 보호하기 위해 사용자 입력을 매개 변수화하는 것이 중요합니다. SQL 쿼리 문자열에 매개 변수 자리 표시자를 포함하고 매개 변수 값을 추가 인수로 제공할 수 있습니다. 사용자가 제공하는 모든 매개 변수 값은 자동으로 DbParameter로 변환됩니다. ExecuteSqlInterpolated를 사용하여 보간된 문자열 구문을 사용하여 매개 변수를 만드는 것도 고려할 수 있습니다. |
ExecuteSqlCommand(DatabaseFacade, RawSqlString, Object[]) |
사용되지 않음.
데이터베이스에 대해 지정된 SQL을 실행하고 영향을 받는 행 수를 반환합니다. 이 메서드는 트랜잭션을 시작하지 않습니다. 트랜잭션에서 이 메서드를 사용하려면 먼저 또는 를 호출 BeginTransaction(DatabaseFacade, IsolationLevel) 합니다 UseTransaction(DatabaseFacade, DbTransaction). SQL이 idempotent가 아니고 트랜잭션에서 실행되지 않으므로 현재 ExecutionStrategy 는 이 메서드에서 사용되지 않습니다. ExecutionStrategy를 명시적으로 사용할 수 있으므로 SQL이 idempotent가 아닌 경우에도 트랜잭션을 사용해야 합니다.
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).
SQL이 idempotent가 아니고 트랜잭션에서 실행되지 않으므로 현재 ExecutionStrategy 는 이 메서드에서 사용되지 않습니다. ExecutionStrategy를 명시적으로 사용할 수 있으므로 SQL이 idempotent가 아닌 경우에도 트랜잭션을 사용해야 합니다.
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).
SQL이 idempotent가 아니고 트랜잭션에서 실행되지 않으므로 현재 ExecutionStrategy 는 이 메서드에서 사용되지 않습니다. ExecutionStrategy를 명시적으로 사용할 수 있으므로 SQL이 idempotent가 아닌 경우에도 트랜잭션을 사용해야 합니다.
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).
SQL이 idempotent가 아니고 트랜잭션에서 실행되지 않으므로 현재 ExecutionStrategy 는 이 메서드에서 사용되지 않습니다. ExecutionStrategy를 명시적으로 사용할 수 있으므로 SQL이 idempotent가 아닌 경우에도 트랜잭션을 사용해야 합니다.
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[]
반환
적용 대상
Entity Framework