Executes the given SQL against the database and returns the number of rows affected.

Note that this method does not start a transaction. To use this method with a transaction, first call:

BeginTransaction(DatabaseFacade, IsolationLevel)

or

UseTransaction(DatabaseFacade, DbTransaction)

Note that the current ExecutionStrategy is not used by this method since the SQL may not be idempotent and does not run in a transaction. An ExecutionStrategy can be used explicitly, making sure to also use a transaction if the SQL is not idempotent.

SQL Injection Attack

As with any API that accepts SQL it is important to parameterise any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter.

using Microsoft.EntityFrameworkCore;

var count = context.Database.ExecuteSqlRaw("DELETE FROM [app].[SignIn] WHERE Id={0}", Id);

Further reading

Copyright © 2025 delaney. All rights reserved.