嘿,我习惯了 ORM,所以我非常缺乏 sql 经验。我想知道将一行插入表中的最佳方法是什么,即与另一个表处于多对多关系,并且在一个语句中还将一行两个外键插入到特定的链接表中以保留数据完整性。
如果有人使用 spring jdbcTemplate,我还想知道它是否支持此任务。提前致谢
最佳答案
这通常是存储过程的用途,例如
CREATE PROC MyInsertM2M(@fieldname1 int, @fieldname2 varchar(20), @Key1 int, @Key2 int etc)
AS
BEGIN
INSERT INTO MyMainTable(fieldname1, fieldname2...)
VALUES(@fieldname1, @fieldname2...)
INSERT INTO MyResolverTable(KeyField1, Keyfield2)
VALUES (@Key1, Key2)
END
(假设是sql服务器)
然后 Google BEGIN TRAN、COMMIT TRAN 和 ROLLBACK。
关于SQL 行插入表 + 键在一条语句内插入其链接表(多对多关系),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4091709/