Home > Database > Mysql Tutorial > How to Correctly Execute Stored Procedures with Parameters using DbContext.Database.SqlQuery?

How to Correctly Execute Stored Procedures with Parameters using DbContext.Database.SqlQuery?

Linda Hamilton
Release: 2025-01-17 11:52:09
Original
905 people have browsed it

How to Correctly Execute Stored Procedures with Parameters using DbContext.Database.SqlQuery?

Use DbContext.Database.SqlQuery to execute a stored procedure with parameters

The

DbContext.Database.SqlQuery(sql, params) method allows executing a database query and returning the results as an object of the specified type. Although the user-provided code example attempts to call a stored procedure with three parameters, it fails because the parameters were incorrectly specified.

To successfully execute a stored procedure with parameters using this method, the parameters should be provided as SqlParameter instances. The correct syntax is as follows:

<code class="language-csharp">context.Database.SqlQuery<我的实体类型>(
    "我的存储过程名称 @param1, @param2, @param3",
    new SqlParameter("param1", param1),
    new SqlParameter("param2", param2),
    new SqlParameter("param3", param3)
);</code>
Copy after login

In this modified code, the sql parameters contain parameter names prefixed with "@". new SqlParameter The subsequent parameters of the instance specify the parameter name to be replaced and the value of that parameter.

With this approach, the expected parameters of the stored procedure can be provided, allowing the query to be successfully executed and the results returned as an object of the specified type.

The above is the detailed content of How to Correctly Execute Stored Procedures with Parameters using DbContext.Database.SqlQuery?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template