使用Visual Studio和MySQL。我有一个表格类型,其中包含两个列 - ID和流派。
我在Visual Studio中使用
创建了一个组合框我想获取显示成员的ID(可能是Value Member)并将其插入另一个表中。当我使用以下代码将Value Member插入到textBox中时,只是为了查看值是否正确
textBox3.Text = comboBox1.ValueMember.ToString();
它将'ID'显示为字符串。
我尝试过使用所选值作为ID的解决方法以及以下代码:
textBox2.Text = comboBox1.SelectedIndex.ToString();
int anInteger;
anInteger = Convert.ToInt16(textBox2.Text);
anInteger = int.Parse(textBox2.Text);
int i = anInteger + 1;
我用来将ID添加到另一个表中的代码是
SqlCommand xp4 = new SqlCommand("Insert into BookGenre(Genre_Id, Books_Id) Values (@textBox1, @newId2)", test);
xp4.Parameters.Add("@textBox1", SqlDbType.Int).Value = i;
xp4.Parameters.Add("@newId2", SqlDbType.Int).Value = newId2;
test.Open();
xp4.ExecuteNonQuery();
test.Close();
但是当我尝试执行程序时出现错误:
附加信息:INSERT语句与FOREIGN KEY约束“FK_BookGenre_Genre”冲突。冲突发生在数据库“BookStoreBiggest”,表“dbo.Genre”,列'ID'。
答案 0 :(得分:0)
在插入BookGenre之前,必须先将它们插入表格类型。 (两者之间的关系必须匹配值)这就是FOREIGN KEY约束所要求的。