mình đang làm phần winform kết nối csdl sql , cái chỗ thêm sàn phẩm mới mình sử dụng sqldatareader để kiểm tra masp trong csdl nếu chưa có thì mình bắt đầu thêm vào , thì nó cứ lỗi như ảnh dưới , mà mình đã thử đóng kết nối mỗi lần gọi cái datareader ra rồi mà vẫn không được, ai chỉ mình vs…
kiểu dịch lỗi ra là phải đóng kết nối cái kết nối của cái gì đấy …
code nút thêm
{
try
{
if (txtmasp.Text != “”)
{
SqlConnection conn = kn();
string query = “SELECT masp FROM SanPham WHERE masp = '” + txtmasp.Text + “’”;
SqlCommand cmd = new SqlCommand(query, conn);
SqlDataReader rd = cmd.ExecuteReader();
if (rd.Read())
{
MessageBox.Show(“Mã sản phẩm đã tồn tại, vui lòng nhập mã khác”,
“Lỗi Thêm Sản Phẩm”, MessageBoxButtons.OK, MessageBoxIcon.Error);
}
else
{
string sql = “INSERT INTO SanPham VALUES (@masp,@tensp,@donvitinh,@dongia)”;
cmd = new SqlCommand(sql, conn);
cmd.Parameters.AddWithValue(“masp”, txtmasp.Text);
cmd.Parameters.AddWithValue(“tensp”, txttensp.Text);
cmd.Parameters.AddWithValue(“donvitinh”, txtdonvitinh.Text);
cmd.Parameters.AddWithValue(“dongia”, txtdongia.Text);
cmd.ExecuteNonQuery();
hienthi();
lamtrang();
}
}
else
{
MessageBox.Show(“bạn cần nhập mã để thêm sản phẩm”,“lỗi thêm sản phẩm”,MessageBoxButtons.OK,MessageBoxIcon.Error);
}
}
catch(Exception ex)
{
MessageBox.Show("Lỗi thêm sản phẩm mới \n" + ex.Message, "lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}