MSSQL(2008)和EclipseLink(2.4)
我正在插入带有触发器的表,该触发器插入另一个表
发生这种情况时,EclipseLink会返回触发器插入到另一个表中的记录的ID。
我假设我可以通过让EcliipseLink使用SCOPE_IDENTITY()代替@@ IDENTITY来获得正确的ID。
问题是如何做到这一点?
我需要EclipseLink(JPA)的解决方案,我知道如何使用sql获取id。
答案 0 :(得分:0)
TableA
有一个插入另一个表的触发器。您发出类似..
INSERT INTO TableA (Field1, Field2) VALUES (@Value1, @Value2); SELECT SCOPE_IDENTITY() As MyRecID
这会将记录插入TableA
并返回该记录的ID
。
有关详细信息,请参阅SCOPE_IDENTITY (Transact-SQL)
答案 1 :(得分:0)
有一个向EclipseLink添加自定义序列对象的示例,以解决此问题:http://helpdesk.ibs-aachen.de/2009/08/27/eclipselink-ms-sql-server-identity/