PDA

View Full Version : Cho hỏi về ExecuteNonQuery trong lập trình C# database



fomasudoi
27-05-2008, 15:04
SqlHelper.ExecuteNonQuery(
"Pro_InsertPhieuMuon",
CommandType.StoredProcedure,
"@option",opt,
"@maphieu",txtMaPhieu.Text.Trim(),
"@msdg",cboDocGia.SelectedValue.ToString(),
"@msnv",cboNhanVien.SelectedValue.ToString(),
"@ngaymuon",dtNgayMuon.Value);
Ai giải thích giùm em đoạn code trên ạ
(txt là text box, cbo là combo box, dt là data table. Còn SqlHelper là 1 class tự tạo để kết nối với SQL Server)

uyenchi
27-05-2008, 16:35
Có nghĩa là: Insert thêm 1 Phieu Muon bẳng cách gọi Store Procedure có tên "Pro_InsertPhieuMuon" với ngững tham số truyền vào tương ứng với các field của Phieu Muon. (hy vọng tui đoán đúng)

t3hhaiquy
27-05-2008, 16:40
SqlHelper.ExecuteNonQuery(
"Pro_InsertPhieuMuon",
CommandType.StoredProcedure,
"@option",opt,
"@maphieu",txtMaPhieu.Text.Trim(),
"@msdg",cboDocGia.SelectedValue.ToString(),
"@msnv",cboNhanVien.SelectedValue.ToString(),
"@ngaymuon",dtNgayMuon.Value);
Ai giải thích giùm em đoạn code trên ạ
(txt là text box, cbo là combo box, dt là data table. Còn SqlHelper là 1 class tự tạo để kết nối với SQL Server)

đoạn code này tức là thực thi một câu lệnh StoreProcedure với các tham số là @option,@maphieu... còn opt,txtmaphieu là giá trị truyền vào cho tham số đó. Mình hiểu là thế đó bạn ạ!

pussy_cat
29-05-2008, 14:30
Đúng là gọi một storeprocedure của sqlserver như t3hhaiquy trả lời

chungnn_it
02-06-2008, 14:31
Phương thức ExecuteNonQuery thuộc System.Data.SqlClient.SqlCommand
Nó hỗ trợ chạy 1 sqlCommand và không trả lại gì hết, sqlCommand có thể là 1 câu lệnh sql bình thường ("select, insert, update.."), hoặc là 1 SQL store procedure với các đối truyền vào. Trong trưường hợp này là 1 SQL Store và muốn biết nó làm gì bạn fải xem nội dung Store Pro_InsertPhieuMuon. Nghe tên có vẻ insert vào bảng PhieuMuon còn có liên quan đến bảng khác kô thì view store thì rõ hết.

dd04
03-06-2008, 20:31
sao lại nói ExecuteNonQuery() không trả lại j` hêt. Có đấy chứ......

akenpc
04-06-2008, 15:21
Although the ExecuteNonQuery returns no rows, any output parameters or return values mapped to parameters are populated with data.
thế bác muốn nó trả về cái gì nữa

fomasudoi
06-06-2008, 21:06
Hì, chân thành cảm ơn mọi người. Sau khi bác t3hhaiquy giải thích thì em đã hiểu rồi :)

0610290
04-05-2009, 23:09
ExecuteNonQuery() trả về kiểu int mà, kết quả là số hàng affected đó. Nhớ kỹ nha bạn.