Bạn cần sử dụng truy vấn được tham số hóa để tránh lỗi, vì bạn đang nối các giá trị chuỗi rõ ràng. Ngoài ra, logic của bạn cũng sai, làm điều này sẽ gây ra dữ liệu chưa chuẩn hóa, điều này sẽ khiến cho bất kỳ Quản trị viên DB nào phải sắp xếp. Tôi sẽ cân nhắc sử dụng cái này để thay thế:
SqlConnection conn = new SqlConnection(@"Data Source=(LocalDB)\v11.0;AttachDbFilename=C:\Users\rnawa_000\Documents\Visual Studio 2013\Projects\Random\Random\sales.mdf;Integrated Security=True");
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
conn.Open();
foreach (string item in listBox1.Items)
{
cmd.CommandText = "insert into salesTB (Date,Time,Name,Quantity,Cost,Purchase) values (@date, @time, @name, @quantity, @cost, @purchase)";
cmd.Parameters.Add(new SqlParameter("date", date.Text));
cmd.Parameters.Add(new SqlParameter("time", time.Text));
cmd.Parameters.Add(new SqlParameter("name", txtName.Text));
cmd.Parameters.Add(new SqlParameter("quantity", listBox1.Items.Count));
cmd.Parameters.Add(new SqlParameter("cost", txtCost.Text));
cmd.Parameters.Add(new SqlParameter("purchase", item.Substring(0,10)));
cmd.ExecuteNonQuery();
cmd.Clone();
}
conn.Close();
Nó không được thử nghiệm, nhưng bạn có ý tưởng.