代码之家  ›  专栏  ›  技术社区  ›  lisak

在一条语句(多对多关系)中将SQL行插入到表中+键插入到其链接表中

  •  0
  • lisak  · 技术社区  · 14 年前

    嘿,我已经习惯了ORM,所以我缺乏sql经验。我想知道向表中插入行的最佳方式是什么,即与另一个表的多对多关系,并且在one语句中还向特定的链接表中插入一行两个外键,以保持数据完整性。

    如果有人在使用spring jdbcTemplate,我还想知道它是否支持这个任务。提前谢谢

    1 回复  |  直到 14 年前
        1
  •  1
  •   SteveCav Flater    14 年前

    这就是存储过程的典型用途(如

    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 server)

    然后google开始TRAN,提交TRAN并回滚。