Tổng hợp hàm thêm, xóa, sửa trong lập trình c# theo mô hình 3 lớp
Các bạn đã đọc bài viết Một số hàm thương dùng trong lập trình 3 lớp C# thì hôm nay các bạn sẽ cùng thực hiện , cùng ứng dụng các hàm này bên trong chương trình của mình nhé
Lưu ý đây là các hàm Select cũng như thêm xóa sửa được viết phục vụ cho việc sử dụng Procdure của Sqlsever nhé.
HÀM INSERT
public bool executeInsertQuery(String _query, SqlParameter[] sqlParameter)
{
SqlCommand myCommand = new SqlCommand();
SqlConnection conn = getconnect();
myCommand.Connection = conn;
myCommand.CommandText = _query;
myCommand.Parameters.AddRange(sqlParameter);
myAdapter.InsertCommand = myCommand;
conn.Open();
int kq=myCommand.ExecuteNonQuery();
if (kq > 0)
{
return true;
}
else
{
return false;
}
}
HÀM UPDATE
public bool executeUpdateQuery(String _query, SqlParameter[] sqlParameter)
{
SqlCommand myCommand = new SqlCommand();
SqlConnection conn = getconnect();
myCommand.Connection = conn;
myCommand.CommandText = _query;
myCommand.Parameters.AddRange(sqlParameter);
myAdapter.UpdateCommand = myCommand;
conn.Open();
int kq=myCommand.ExecuteNonQuery();
if (kq > 0)
{
return true;
}
else
{
return false;
}
}
HÀM DELETE
public bool executeDeleteQuery(String _query, SqlParameter[] sqlParameter)
{
SqlCommand myCommand = new SqlCommand();
SqlConnection conn = getconnect();
myCommand.Connection = conn;
myCommand.CommandText = _query;
myCommand.Parameters.AddRange(sqlParameter);
myAdapter.DeleteCommand = myCommand;
conn.Open();
int kq= myCommand.ExecuteNonQuery();
if(kq>0)
{
return true;
}
else
{
return false;
}
}
BÂY GIỜ QUA TỚI LỚP BUSINESS
HÀM THÊM
public bool them(string ten)
{
SqlParameter[] sqlpara = new SqlParameter[1]; // khai báo 1 mảng bao gồm các giá trị bên trong proc
sqlpara[0] = new SqlParameter("@tenban", SqlDbType.NVarChar, 50); // kiêu dữ liệu proc
sqlpara[0].Value = ten; // tham số truyền vào
return da.executeInsertQuery("them @ten", sqlpara); //thực hiện, lưu ý “themban” là tên proc, “@tenban” là giá trị của proc
}
Nói thêm : cái biến Sqlparameter được khai báo dạng mảng cho nên giá trị tham số truyền vào là bai nhiêu thì khai báo ở new Sqlparameter[giá trị] ví dụ như procdure @tenban của mình có 1 tham số truyền vào thì mình để là 1 , còn nếu 2 , 3 thì thêm 2 , 3 vào .
Sqlpara[0]= new sqlparameter("@tenban",Sqldbtype.navarchar,50) là kiểu dữ liệu của tham số thứ 1 và .Value cũng vậy
Sqlpara[0]= new sqlparameter("@tenban",Sqldbtype.navarchar,50) là kiểu dữ liệu của tham số thứ 1 và .Value cũng vậy
HÀM SỬA
public bool sua(string ten,string id)
{
SqlParameter[] sqlpara = new SqlParameter[2];
sqlpara[0] = new SqlParameter("@ID", SqlDbType.Int);
sqlpara[0].Value = id;
sqlpara[1] = new SqlParameter("@ten", SqlDbType.NVarChar, 50);
sqlpara[1].Value = ten;
return da.executeUpdateQuery("sua @ID,@ten", sqlpara);
}
HÀM XÓA
public bool xoa(string id)
{
SqlParameter[] sqlpara = new SqlParameter[1];
sqlpara[0] = new SqlParameter("@id", SqlDbType.Int);
sqlpara[0].Value = id;
return da.executeDeleteQuery("xoa @id", sqlpara);
}
TIẾP THEO LÀ BÊN FORM
public void them()
{
try
{
bs.themban(this.textBox1.Text); // tham số truyền vào
}
catch (Exception ex)
{
MessageBox.Show(ex.Message,"Thông báo");
}
}
Còn các hàm xóa và sửa bên form cũng tương tự như thêm.