Visual StudioとMySQLを使用する。私はIDとジャンルの2つの列を含むテーブルのジャンルを持っています。別のテーブルに挿入するCombobox値メンバー
私は
- データソースとVisual Studioでコンボボックスを作成しました:ジャンルテーブル
- 表示Member-ジャンル(列)
- 値の残り火 - ID(列)
表示されたメンバーのID(おそらくバリューメンバー)を受け取り、別のテーブルに挿入したいと考えています。私はテキストボックスに値メンバーを挿入するために、次のコードを使用すると値がそれを文字列として「ID」を示し
textBox3.Text = comboBox1.ValueMember.ToString();
正しいかどうかだけ確認してください。
Iは同様にIDとして選択された値を用いた問題を回避し、次のコードを試してみた:
textBox2.Text = comboBox1.SelectedIndex.ToString();
int anInteger;
anInteger = Convert.ToInt16(textBox2.Text);
anInteger = int.Parse(textBox2.Text);
int i = anInteger + 1;
Iは、他のテーブルに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();
であります
しかし、プログラムを実行しようとするとエラーが発生します:
Additional information: The INSERT statement conflicted with the FOREIGN KEY constraint "FK_BookGenre_Genre". The conflict occurred in database "BookStoreBiggest", table "dbo.Genre", column 'ID'.
実際の問題は、テーブルの関係を理解することです。コンボボックスではありません – efekctive