【问题标题】:Must declare the scalar variable "@@RowCount" on SaveChangesAsync必须在 SaveChangesAsync 上声明标量变量“@@RowCount”
【发布时间】:2019-07-31 20:16:09
【问题描述】:

我在实体框架中有一个简单的表插入,用于将记录添加到 Azure SQL 数据仓库表。我在 context.SaveChanges() 上收到此错误 - SQLException:必须声明标量变量“@@ROWCOUNT

读取表格工作正常,只是保存到表格失败。

context.Users.Add(user); context.SaveChanges(); -> 这里失败了。

预期结果 - 记录应该被插入到表中 实际结果 - Microsoft.EntityFrameworkCore.DbUpdateException: '更新条目时出错。有关详细信息,请参阅内部异常。 内部异常 SqlException: 必须声明标量变量“@@ROWCOUNT”。

【问题讨论】:

标签: entity-framework .net-core-2.2 azure-sql-data-warehouse


【解决方案1】:

我发现 Azure SQL 数据仓库不支持 EntityFramework。 https://feedback.azure.com/forums/307516-sql-data-warehouse/suggestions/12868725-support-for-entity-framework

我使用 SqlConnection 和 SqlCommand 作为解决方法。

        `using (var cn = new SqlConnection(connectionString))
        {
            var query = "insert into Users([Id]) values (@Id)";
            using (var cmd = new SqlCommand(query, cn))
            {
                cmd.Parameters.AddWithValue("@Id", 1);
                cn.Open();
                cmd.ExecuteNonQuery();
                cn.Close();
            }
        }`

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-11-03
    • 1970-01-01
    • 2013-07-03
    • 1970-01-01
    相关资源
    最近更新 更多