【问题标题】:Legacy tables grails mapping issue with SQL ServerSQL Server 的旧表 Grails 映射问题
【发布时间】:2014-08-12 22:50:28
【问题描述】:

我在 SQL Server 中有 2 个旧表:

这些是这些表的域类

当我尝试使用动态脚手架将 Taladro 插入数据库时​​失败并出现以下错误:

错误 util.JDBCExceptionReporter - 无法将值 NULL 插入列“proyecto_id”、表“Portal.ORECONTROL.TALADROS”;列不允许空值。插入失败。

我将外键的名称从 id_proyecto 更改为 IdMalla,就像在旧表中一样(请参阅 http://ur1.ca/hl1mw)。

我使用 SQL Server 2008 作为数据库服务器

【问题讨论】:

    标签: sql-server hibernate grails grails-domain-class


    【解决方案1】:

    似乎现在您在TALADROS 表中有列proyecto_id 具有非空约束。在域对象Taladro 中,您已将关联列映射指定为'IdMalla',而不是默认的'proyecto_id'。 显然,这意味着 proyecto_id 列未填充,并且由于它具有非空约束,因此您会收到此错误。

    【讨论】:

      【解决方案2】:

      我可以解决使用数据库中的表名称重命名域类并将外键名称更改为“IdMalla”的问题。谢谢大家的回答

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-02-21
        • 2012-10-08
        • 2015-08-24
        • 1970-01-01
        • 1970-01-01
        • 2019-04-22
        • 2023-03-03
        • 1970-01-01
        相关资源
        最近更新 更多