-1
我有一個包含數據的DataGridView
。這裏是圖片:無法正確插入數據到數據庫
當我成功插入從DataGridView
數據到一個表,結果變成這樣
有在數量小計和一個零數目。這裏是我的代碼時,我插入來自DataGridView
數據表
for (int i = 0; i < dataGridView1.Rows.Count; i++)
{
con.execute("INSERT INTO SalesDetail VALUES('" + txtID.Text + "','"
+ dataGridView1.Rows[i].Cells["Column7"].Value + "','"
+ dataGridView1.Rows[i].Cells["Column3"].Value + "','"
+ dataGridView1.Rows[i].Cells["Column5"].Value + "','"
+ dataGridView1.Rows[i].Cells["Column6"].Value + "')");
//con.execute("UPDATE KerupukDetail SET currentStock = currentStock - '" + dataGridView1.Rows[i].Cells["Column3"].Value + "' WHERE kerupukID='" + dataGridView1.Rows[i].Cells["Column7"].Value + "' and fryingID='" + textBoxriedID.Text + "'");
}
而且我Class
Connection
連接到數據庫:
class Connect
{
SqlConnection con;
public Connect()
{
String connectionString = @"Data Source=.\SQLEXPRESS;AttachDbFilename=" + Application.StartupPath + @"\Database1.mdf;Integrated Security=True;User Instance=True";
con = new SqlConnection(connectionString);
}
public DataTable executeSelect(String query)
{
con.Open();
SqlDataAdapter adapter = new SqlDataAdapter(query, con);
DataTable dt = new DataTable();
adapter.Fill(dt);
con.Close();
return dt;
}
public void execute(String query)
{
con.Open();
SqlCommand cmd = new SqlCommand(query, con);
cmd.ExecuteNonQuery();
con.Close();
}
}
怎麼樣解決這個問題,並刪除零號的代碼?
注意:在一個SalesID中可以包含一個或多個kerupukID。 txtID
是SalesID
我強烈建議更改您的查詢以利用參數的初學者..也使用調試器來遍歷代碼並檢查所有您嘗試插入的值。你需要正確地命名你的方法以及'con.execute(「INSERT INTO SalesDetail VALUES('」'改變這個以將列名放入插入以及 – MethodMan
我很抱歉,但我只能以這種方式理解。我是一個新手:)所以,如何解決這個問題?hehe –
'新手'或不..這不是一個藉口,你可以使用谷歌快速找到關於如何格式化一個'INSERT'語句使用C#現在來吧.. – MethodMan