2014-07-22 64 views
0

我在mssql数据库中有两个表,horse_datatrainer_data。该horse_data有以下栏目: -插入到mssql中

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,而是输入培训师的名称,然后让插入查询查找trainer_data中的值并插入正确的trainer_id转换为horse_data表的horse_trainer_id列?

+0

我能做到。最终它将通过一个winforms应用程序,但首先我只想学习如何在mssql中编写查询在mssql design studio – sila

回答

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')) 
+0

Fantastic!像梦一样工作。谢谢。 – sila