Share via


RelationalDatabaseFacadeExtensions.ExecuteSql Metodo

Definizione

Esegue il codice SQL specificato sul database e restituisce il numero di righe interessate.

public static int ExecuteSql (this Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade databaseFacade, FormattableString sql);
static member ExecuteSql : Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade * FormattableString -> int
<Extension()>
Public Function ExecuteSql (databaseFacade As DatabaseFacade, sql As FormattableString) As Integer

Parametri

databaseFacade
DatabaseFacade

Oggetto DatabaseFacade per il contesto.

sql
FormattableString

Stringa interpolata che rappresenta una query SQL con parametri.

Restituisce

Numero di righe interessate.

Commenti

Si noti che questo metodo non avvia una transazione. Per usare questo metodo con una transazione, chiamare BeginTransaction(DatabaseFacade, IsolationLevel) prima o UseTransaction.

Si noti che l'oggetto corrente ExecutionStrategy non viene usato da questo metodo perché SQL potrebbe non essere idempotente e non viene eseguito in una transazione. Un ExecutionStrategy oggetto può essere usato in modo esplicito, assicurandosi di usare anche una transazione se SQL non è idempotente.

Come per qualsiasi API che accetta SQL, è importante parametrizzare qualsiasi input dell'utente per proteggersi da un attacco SQL injection. È possibile includere i segnaposto dei parametri nella stringa di query SQL e quindi specificare i valori dei parametri come argomenti aggiuntivi. Tutti i valori dei parametri forniti verranno convertiti automaticamente in dbParameter.

Per altre informazioni ed esempi, vedere Esecuzione di comandi SQL non elaborati con EF Core .

Si applica a