插入mssql

时间:2014-07-22 10:47:08

标签: sql-server insert

我在mssql数据库中有2个表,horse_datatrainer_data。 horse_data包含以下列: -

horse_id, horse_name, horse_nationality, horse_yof, horse_sex, horse_sire, horse_dam, horse_trainer_id

和trainer_data的专栏是: -  trainer_id, trainer_name

trainer_id和horse_trainer_id之间存在外键关系。

如何在horse_data表中插入新记录,而不是为horse_trainer_id的值输入int,输入教练的名称,然后让insert查询在trainer_data中查找值并插入正确的trainer_id进入horse_data表的horse_trainer_id列?

1 个答案:

答案 0 :(得分:3)

试试这个:

INSERT INTO horse_data (horse_id, horse_name, horse_nationality, 
                        horse_yof, horse_sex, horse_sire, horse_dam, horse_trainer_id)
VALUES (horse_id, horse_name, horse_nationality, horse_yof, 
        horse_sex, horse_sire, horse_dam, 
        (SELECT TOP 1 trainer_id FROM  trainer_data WHERE trainer_name = 'name'))