实体框架,视图而不是插入触发器。无法在视图中插入行

2023-11-24

我无法将实体插入到映射视图中。 我得到的错误是:

存储、插入或删除语句影响了意外数量的行 (0)

我知道如何使用存储过程,但对我来说更有趣的是尝试在插入行视图事件上使用而不是触发器的解决方案。在 t-sql 代码中删除、更新或插入时,我没有收到任何错误,但无法使用 EF 插入行。更新和删除在 EF 中进行,但 INSERT 则不然。

Code:

create view TestInsert
as
    select a.table_id, a.name
    from TableA as a

create trigger tr_works_via_tsql_but_not_ef_for_some_reason
on TestInsert
instead of isert
begin
   insert into TableA (table_id, name)
   select table_id, name from inserted;
end
[Table(TestInsert)]
public class TestInsert
{
   [Key]
   public int table_id { get; set; }
   public string name { get; set; }
}

谁能帮我?


万岁,我找到了解决方案! 代替触发器的主体必须返回表的 id.

create trigger tr_works_via_tsql_but_not_ef_for_some_reason
on TestInsert
instead of isert
begin
   insert into TableA (table_id, name)
   select table_id, name from inserted;

   **select id from TableA where @@ROWCOUNT > 0 and id = scope_identity()**
end

我使用直接映射,并且我的项目中没有 edmx 文件。 这是答案的来源:具有 Replace Of 触发器的实体框架

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

实体框架,视图而不是插入触发器。无法在视图中插入行 的相关文章

  • 抑制实体框架核心中的 SQL 查询日志记录

    我有一个使用实体框架核心的控制台 net core 应用程序 该应用程序使用日志框架写入文件和控制台 serviceProvider new ServiceCollection AddLogging AddDbContext
  • 限制 SQL Server 连接到特定 IP 地址

    我想将 SQL Server 实例的连接限制为特定 IP 地址 我想阻止来自除特定列表之外的任何 IP 地址的任何连接 这是可以在 SQL Server 实例或数据库中配置的东西吗 听起来像是你会使用Windows防火墙 http tech
  • 有没有更好的方法使用 MVC 4 和 Entity Framework 5 添加子记录?

    我正在学习 MVC 并结合实体框架处理其无状态性质 我的问题是 有没有更优雅的方式来处理下面的场景 我有两个 POCO 实体 public class Contest public long ID get set public IColle
  • PDO SQLSRV 和 PDO MySQL 在获取 int 或 float 时返回字符串

    当您获取时 PDO MS SQL Server 和 PDO MySQL 都会返回一个字符串数组 即使列的 SQL 类型本应是数字类型 例如 int 或 float 我设法解决了这个问题 但我想了解为什么它们一开始就这样设计 是不是因为PDO
  • asp.net mvc 4 - 可以在每个线程共享 DbContext 吗?

    From 每个 Web 请求一个 DbContext 为什么 https stackoverflow com questions 10585478 one dbcontext per web request why 我的理解是 DbCont
  • 获取家庭成员

    假设以下家庭 其构建架构是 create table PersonConn child int parent int insert into PersonConn values 1 2 insert into PersonConn valu
  • WinForms 中的 EF:如何过滤 BindingSource/DGW 中的数据 (.Local.ToBindingList())

    我按照本教程生成了 EF 模型 首先是数据库 和数据源http msdn microsoft com en us data jj682076 aspx http msdn microsoft com en us data jj682076
  • 快速转储 SQL Server 表

    我在 SQL Server 2008 R2 中有一个大表 它包含数十亿行 我需要在我们的应用程序中加载整个数据集 查询全表非常慢 我想使用 bcp 将其转储到文件中并加载它 但问题是字符串列包含各种特殊字符 如 t 0 逗号和 n 我找不到
  • Kerberos 双跳

    我们遇到了臭名昭著的 Kerberos 双跳问题 这是一个全新的域 是从以前使用模拟和委派的另一个提供商迁移而来的 我们已将操作系统升级到最新的 SQL 服务器 2017 WPF 应用程序 使用域凭据 gt Web 服务 IIS 10 上的
  • 类型中的属性名称必须是唯一的

    我正在使用 Entity Framework 5 并且有以下实体 public class User public Int32 Id get set public String Username get set public virtual
  • 在 Sql Server 中转换为日期时间 MM/dd/yyyy HH:mm:ss

    如何将给定的日期格式转换为MM dd yyyy HH mm ss 我尝试了下面这个但没有实现 谁能帮我 SELECT CONVERT VARCHAR 20 GETDATE 120 SQL Server 2005及以上版本支持 SELECT
  • 从备用位置获取实体框架连接字符串?

    如何从自定义配置文件而不是 web config 检索 Entity Framework 4 连接字符串 编辑 删除默认构造函数生成的代码并在分部类中重新创建它以使用拉入的连接字符串是否合理 我真的很想避免使用包括连接字符串在内的重载方法更
  • 重命名重复行

    这是我的问题的一个简化示例 我有一个表 其中有一个包含重复条目的 名称 列 ID Name 1 AAA 2 AAA 3 AAA 4 BBB 5 CCC 6 CCC 7 DDD 8 DDD 9 DDD 10 DDD 进行 GROUP BY 操
  • C#的数组列表可以用来填充SSIS对象变量吗?

    我已在 C 脚本中填充了一个列表 并将其值分配给 SSIS 对象变量 然后 我使用该对象变量通过循环遍历 For every do 枚举器来执行一些 SQL 查询 我尝试通过 Foreach ado 枚举器执行此操作 但出现错误 X 变量不
  • 将表数据从一个 SQL Server 导出到另一台 SQL Server

    我有两个 SQL Server 都是 2005 版本 我想将多个表从一个表迁移到另一个表 我努力了 在源服务器上 我右键单击数据库 选择Tasks Generate scripts 问题是在下面Table View options没有Scr
  • 临时表是线程安全的吗?

    我正在使用 SQL Server 2000 它的许多存储过程广泛使用临时表 数据库的流量很大 我担心创建和删除临时表的线程安全性 假设我有一个存储过程 它创建了一些临时表 它甚至可以将临时表连接到其他临时表等 并且还可以说两个用户同时执行存
  • 将多个表映射到实体框架中的单个实体类

    我正在开发一个旧数据库 该数据库有 2 个具有 1 1 关系的表 目前 我为每个定义的表定义了一种类型 1Test 1Result 我想将这些特定的表合并到一个类中 当前的类型如下所示 public class Result public
  • Android访问远程SQL数据库

    我可以直接从 Android 程序访问远程 SQL 数据库 在网络服务器上 吗 即简单地打开包含所有必需参数的连接 然后执行 SQL 查询 这是一个私人程序 不对公众开放 仅在指定的手机上可用 因此我不担心第三方获得数据库访问权限 如果是这
  • 如何跨多个表强制执行 CHECK 约束

    我有一个在 Microsoft SQL Server 2012 Express 中记录奶牛繁殖信息的数据库 显然 一头牛只有在出生后才能配种 并且在其一生中可能会配种多次 我需要在我的数据库中强制执行这些约束 我目前已经根据下图安排了一个架
  • Visual Studio 2010 中的数据库设计器

    我需要创建一个全新的 Sql Server 2008 数据库 并希望使用 Visual Studio 2010 Ultimate 中的数据库项目 我已经创建了该项目并在下面添加了一个表格dbo架构 桌子 sql仅以纯文本形式显示 但带有颜色

随机推荐

  • 将源代码隐藏在 .jar 文件中

    人们可以轻松提取 jar文件并查看源代码 我想保护源代码不被看到 一种可能的答案是使用密码保护文件 就像我们对 zip 文件所做的那样 但是 如果知道密码 则可以轻松查看源代码 有没有什么方法可以隐藏源代码并仍然能够运行 类似于什么 exe
  • python:使用 PyCharm 和 PyQt5 时进程已完成,退出代码 1

    我有三个 Python 3 4 3 脚本 其中之一是用于控制 PyQt5 生成的 ui 文件 当我运行 GUI 程序时 它接受所有数据和所有内容 当我按 InputDialog 上的 确定 按钮时 窗口将关闭并显示控制台 Process f
  • JavaScript 字符串赋值运算符

    我怎么可以用 在字符串上 但我不能使用 on it 例如 var test Test var arr 8660 test arr alert test Shows Test 8660 test arr alert test Shows Na
  • .net core 1.1:外部程序集的 Type.GetType 返回 null

    我正在将控制台应用程序移植到 NET core 该应用程序从外部库加载类型 在完整的 NET Framework 中使用Type GetType typename assemblyname 当程序集位于与可执行文件相同的文件夹中时有效 在
  • 在 Flutter 中迭代列表来渲染多个小部件?

    我有一个如下定义的字符串列表 var list one two three four 我想使用文本小部件在屏幕上并排呈现值 我尝试使用以下代码来尝试此操作 for var name in list return new Text name
  • 如何在 UIPickerView 标签旁边获得复选标记?

    The UIPickerView that appears in Safari has a check mark beside the current choice Is there a built in way to get this o
  • 如何在Android中的Webview中打开Excel、.doc文件?

    如何在 Android webview 中打开 Excel 和 doc 文件 谷歌文档可以支持吗 是的 Google doc 支持您显示 doc 或 excel pdf 文本或其他格式 WebView urlWebView WebView
  • 如何从 Android Google 令牌创建解析 _User 帐户?

    我发现了一些有用的信息片段 http blog parse com announcements bring your own login 向我展示如何登录 Android 应用程序once我有一个解析令牌 我可以成功获取手机 Google
  • 有关哈希盐的综合信息

    关于盐和最佳实践有很多问题 但大多数问题只是回答有关它们的非常具体的问题 我有几个相互关联的问题 假设数据库遭到破坏 每个用户的盐会阻止使用通用彩虹表来破解密码 必须为每个拥有唯一盐的用户生成一个单独的彩虹表才能获取其密码 这将是一个耗时的
  • 具有静态框架子依赖项的 XCFramework

    我有一个 XCFramework 它依赖于几个静态框架 我的 XCFramework 是在启用 BUILD FOR LIBRARIES FOR DISTRIBUTION 的情况下构建的 子框架不需要从 XCFramework 外部访问 当我
  • 将 Mercurial Repository 放在共享网络驱动器中是个好主意吗?

    我们是一个由 3 名开发人员组成的小团队 老板 我和另一名开发人员 主要是远程工作 我的任务是为 Mercurial HG 设置存储库服务器 看来我可以简单地将我们的集中存储库放在共享网络驱动器上 它的设置非常容易 但似乎存在我们任何人都可
  • 为什么预检请求仅在 Chrome 中失败,然后在尝试几次后就可以工作了?

    我在飞行前请求方面遇到了一个奇怪的问题 This is how it looks in the Chrome and other chromium based browsers after doing something in our ap
  • Spring Boot上传多部分413请求实体太大

    我有这样一个方法 RequestMapping method RequestMethod POST ResponseStatus HttpStatus CREATED ResponseBody PreAuthorize securitySe
  • Predicate 的基于 Linq 的通用替代方案?

    我有一个名为ICatalog如下所示 其中每个ICatalog有一个名称和一个方法 该方法将根据Predicate
  • 在 Bash 中提取最后两个斜杠之间的字符串

    我知道这可以使用正则表达式轻松完成 就像我回答的那样https stackoverflow com a 33379831 3962126 但是我需要在 bash 中执行此操作 所以我在 Stackoverflow 上发现的最接近的问题是这个
  • SetNeedsDisplay 不起作用

    我看到了许多与此问题相关的线程 但没有一个解决我的情况 我认为 我的情况应该很简单 我有一个自定义UIView在我的控制器中 从我的控制器中 我使用 self myView setNeedsDisplay 并且效果完美 当我尝试从内部调用它
  • django-cms + grappelli

    如果有人知道如何让 django cms 玩 grappelli 请给一些提示 嗯 我刚刚经历了一次相当史诗般的冒险 其中的故事可能对你有用 上述冒险的终点是让 django cms 2 1 3 与django 文件浏览器无 grappel
  • 将 HTML 插入 golang 模板 [重复]

    这个问题在这里已经有答案了 我在 golang 中有一个模板 其中有一个看起来像这样的字符串
  • 我应该在 InnoDB 中避免一起使用 COUNT 吗?

    我现在正在纠结要不要用COUNT id 或 计数 列 听说InnoDBCOUNT没有的话非常慢WHERE子句 因为它需要锁定表并进行全索引扫描 使用时是否有相同的行为WHERE clause 例如 如果我有一个包含 100 万条记录的表 做
  • 实体框架,视图而不是插入触发器。无法在视图中插入行

    我无法将实体插入到映射视图中 我得到的错误是 存储 插入或删除语句影响了意外数量的行 0 我知道如何使用存储过程 但对我来说更有趣的是尝试在插入行视图事件上使用而不是触发器的解决方案 在 t sql 代码中删除 更新或插入时 我没有收到任何