.net core 2在尝试将参数传递给mysql命令时出现奇怪的错误

34gzjxbg  于 2021-06-24  发布在  Mysql
关注(0)|答案(1)|浏览(337)
_context.Database.ExecuteSqlCommand($@"UPDATE table SET column = 
CONCAT(column,'?{string}') WHERE id = {id}");

string是一个字符串变量,它包含一个要附加到数据库中的值,但不知何故,附加到数据库中的字符串是?@p0而不是?value,我使用的是pomelo mysql。

svdrlsy4

svdrlsy41#

查看“dapper”库以与数据库交互。对于代码,您可以这样做:

using Dapper;

string sql = "UPDATE table SET column = CONCAT(column, @s) WHERE id = @id";
using (var connection = new SqlConnection(yourConnectionString))
{
        try
        {
            connection.Execute(sql, new { @id = yourid, s = string });
        }
        catch (SqlException e)
        {
            Debug.WriteLine(e);
        }
}

相关问题