0
こんにちは私はちょうどこの言語C#とMySQL ..で新しく、なぜIn
とUnit_Value
の値が0
であるのかわかりません。
カラムを更新したいと思います。アイテムを追加するたびに、そのアイテムの数量を現在の値に加算する必要があります。テーブルを更新する
これは私がやりたいことです: =(数量* Unit_Value)であり、現在の値に追加する必要があります。 Unit_Value = textBox3.Text(Unit_Valueは、コンボボックスのデータベースからの固定値です。コンボボックスのselecteditemの名前で取得します)。
これは私のコードです:
string constring1 = "datasource=localhost;port=;username=;password=;database=;";
MySqlConnection conDataBase1 = new MySqlConnection(constring1);
MySqlCommand mycommand = new MySqlCommand("select `Unit_Value` from `tbl_inventory_item_unit` where `Unit_Name`='"+metroComboBox2.Text+"';",conDataBase1);
MySqlCommand myincommand = new MySqlCommand (
"UPDATE `tbl_inventory_in` SET `In`= `In` + '" + metroLabel12.Text +
"',`In_Quantity`='" + textBox3.Text +
"',`Unit_Value`='" + metroLabel11.Text +
"',`Unit_Name`='"+ metroComboBox2.Text +
"',`In_Date`='"+ metroLabel8.Text +
"'where `Item_ID`='" + textBox4.Text +
"';",conDataBase1);
string b;
int c;
int a;
try {
conDataBase1.Open();
MySqlDataReader myReader1 = mycommand.ExecuteReader();
while (myReader1.Read()) {
b = myReader1.GetValue(0).ToString();
// c = Int32.Parse(b);
// c = Convert.ToInt32(c);
c = Int32.Parse(b);
a = Int32.Parse(textBox3.Text);
metroLabel11.Text = c.ToString();
metroLabel12.Text = (a * c).ToString();
}
myReader1.Close();
MySqlDataReader myinreader = myincommand.ExecuteReader();
while (myinreader.Read()) {
}
MessageBox.Show("Stocks Added");
conDataBase1.Close();
}
フォーマットが完全に通ってくるしませんでした... –
お読みくださいこの回答とリンクされた記事。上記のコードが現在脆弱であるSQLインジェクション攻撃を回避する方法について説明しています。http://stackoverflow.com/a/14376963/1991296 –