SQL查询不能在c#中得到正确的代码,我不知道哪里出了问题
本文关键字:我不知道 代码 问题 不能 查询 SQL | 更新日期: 2023-09-27 18:10:42
我的数据库中有四个表。
- 汽车表(tbl_Auto)
- 车辆类型(tbl_fahrzeugtype)
- 汽车品牌(tbl_market)
- 汽车模型(tbl_model)
和一个带有3个组合框的c#程序。从第一个组合框中,我选择了车型,从第二汽车品牌,从第三汽车型号。
它应该是这样工作的:
- 如果我从第一个组合框中选择了车辆类型(轿跑车), 第二个中的
- 应该只出现在我的数据库中具有此类车型的品牌(例如BMW),然后
- 第三条中应该出现轿跑车类型的宝马车型(例如M5)。
当我在我的数据库查询工作中使用SQL时,我猜我的c#代码有问题。从下面的代码,第一个函数工作,我得到所有车辆类型的组合框,但第二个没有。如果我在SQL服务器上运行查询,它的工作,所以我认为问题是它没有正确阅读第一个组合框。问题是我得到了空白的第二个组合框。
public partial class Mieten : Window
{
public Mieten()
{
InitializeComponent();
fill_comboFtyp();
fill_comboMarke();
}
public void fill_comboFtyp()
{
string connString = "Data Source= DADDO_PC''SQL2012;Integrated Security=True;Initial Catalog= ITIBB_G1_C";
SqlConnection conn = new SqlConnection(connString);
conn.Open();
string anfrage = "Select FTypBeschreibung From tbl_Fahrzeugtyp";
SqlCommand comm = new SqlCommand(anfrage, conn);
SqlDataReader dr = comm.ExecuteReader();
while (dr.Read())
{
string fTyp = dr.GetString(0);
fahrzeugtyp.Items.Add(fTyp);
}
conn.Close();
}
public void fill_comboMarke()
{
string connString = "Data Source= DADDO_PC''SQL2012;Integrated Security=True;Initial Catalog= ITIBB_G1_C";
SqlConnection conn = new SqlConnection(connString);
conn.Open();
string anfrage = "Select Markenname From tbl_Marke join tbl_Auto on tbl_Marke.Marken_ID =tbl_Auto.Marken_ID join tbl_Fahrzeugtyp on tbl_Fahrzeugtyp.Fahrzeugtyp_ID=tbl_Auto.Fahrzeugtyp_ID where tbl_Fahrzeugtyp.FTypBeschreibung='"+fahrzeugtyp.Text+"'";
SqlCommand comm = new SqlCommand(anfrage, conn);
SqlDataReader dr = comm.ExecuteReader();
while (dr.Read())
{
string markenname = dr.GetString(0);
marke.Items.Add(markenname);
}
conn.Close();
您应该有FirstComboBox_OnSelectedIndexChanged()
来运行一个SQL查询,查找所有具有vehicle_type = FirstComboBox.Value
的品牌