SQL。当一个表使用外键与另一个表关联时,如何同时将数据插入到两个表中
我有两张桌子:SQL。当一个表使用外键与另一个表关联时,如何同时将数据插入到两个表中,sql,postgresql,typeorm,Sql,Postgresql,Typeorm,我有两张桌子: Attr.type\u id是type.id 假设我要保存以下数据: { name: 'cats', attributes: ['breed', 'weight'] } 我希望在保存之后: 如何正确编写插入查询 我知道我不能同时插入两个表。我应该使用事务吗?或者有一个简单的方法,因为这看起来很琐碎,但事实并非如此 如果您知道如何使用TypeForm来实现这一点,我们也将不胜感激 更新:我正在使用PostgreSQL,因为type table是主键表,主键先插入id,
Attr.type\u id
是type.id
假设我要保存以下数据:
{
name: 'cats',
attributes: ['breed', 'weight']
}
我希望在保存之后:
如何正确编写插入查询
我知道我不能同时插入两个表。我应该使用事务吗?或者有一个简单的方法,因为这看起来很琐碎,但事实并非如此
如果您知道如何使用TypeForm来实现这一点,我们也将不胜感激
更新:我正在使用PostgreSQL,因为type table是主键表,主键先插入id,然后再插入attr表中。按照这种顺序,约束完整性将得到保证,因为外键总是为特定属性引用其父表。因此,在您的案例中,id是需要在类型表中引用然后插入attr表中的id 插入
类型
表,然后插入属性
表。。。按这个顺序。使用事务可以确保两个插入都是原子化的,但从您的问题中不清楚您是否需要它。@不,我不知道,没有什么重要的。我真的不想提出两个请求,它们是两个SQL语句。如果只需要一个请求,可以编写一个存储过程,但这很麻烦。只需执行两个SQL请求。