我希望你不要介意我是否要求你提供关于如何在没有运行几个查询的情况下将外键插入表中的意见。
我制作了一个示例用户界面和一个示例表来说明我的情况。
这是我在插入时通常所做的事情,首先我对数据库进行查询并将结果加载到ComboBox中。之后,我再次运行查询以在执行INSERT或UPDATE查询之前获取comboBox上的selectedItem的Id,但感觉有一个更好的解决方案,而不会过多地访问数据库。
任何想法都将受到高度赞赏。
问候。
答案 0 :(得分:0)
将项目加载到ComboBox
时,您可以使用数据集,例如从此处检索
"SELECT Id, NameColumn FROM sampleTable"
然后您可以设置ComboBox
DisplayMember
和ValueMember
属性,如此
combobox1.ValueMember = "Id";
combobox1.DisplayMember = "NameColumn";
这样,当您尝试检索项目的Id
时,您需要做的就像
var item = combobox1.SelectedValue;
您现在只需要点击数据库就可以在ComboBox
或INSERT
之前将项目加载到UPDATE
。