Hướng Dẫn Thực Hành Winform - phần 3 ADO.NET
lượt xem 157
download
Tham khảo tài liệu 'hướng dẫn thực hành winform - phần 3 ado.net', công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Hướng Dẫn Thực Hành Winform - phần 3 ADO.NET
- Xây d ng ph n m m hư ng i tư ng GVHD: Tr n Anh Dũng HƯ NG D N TH C HÀNH TU N 3 Ch : ADO.NET Ph n 1: Các thao tác k t n i ADO.NET s d ng c u trúc dòng l nh v i namespace System.Data. 1. Thi t k CSDL: a. M ng d ng Microsoft Access b. Thi t k CSDL, t tên QLHOCSINH.mdb: HOCSINH STT Tên trư ng Ki u d li u Ghi chú 1 MaHS Text(10) PrimaryKey 2 TenHS Text(255) 3 NgaySinh Date/Time 4 DiaChi Text(255) 5 DTB Number 6 MaLop Text(10) ForeignKey (tham chi u n Lop(MaLop) LOP STT Tên trư ng Ki u d li u Ghi chú 1 MaLop Text(10) PrimaryKey 2 TenLop Text(255) 3 SiSo Number 2. Thi t k giao di n: T o project C# Window Application m i v i tên project là QLHS Thi t k Form “Nh p thông tin h c sinh” như màn hình sau:
- Xây d ng ph n m m hư ng i tư ng GVHD: Tr n Anh Dũng T o k t n i cơ s d li u b ng dòng l nh thao tác trên cơ s d li u s d ng ADO.NET ta c n có các i tư ng sau: - o Connection k t n i v i cơ s d li u.g m OleDbConnection và SqlConnection. o Command th c thi các câu l nh truy v n, th c thi các store procedure... bao g m OleDbCommand và SqlCommand o DataAdapter th c hi n ánh x d li u vào DataSet thông qua connection ã có bao g m OleDbDataAdapter và SqlDataAdapter. o DataSet ch a d li u thu ư c ho c x lý l y t cơ s d li u. DataSet là t p h p g m các thành ph n DataTable (tương ng v i t ng View trong cơ s d li u), DataColumn (tương ng v i Field trong CSDL) và DataRow (tương ng v i record trong CSDL). k t n i v i CSDL Access, ta s d ng OleDb. Ta khai báo s d ng namespace như sau: - using System.Data; using System.Data.OleDb; - Ta khai báo các bi n c n s d ng x lý CSDL. private OleDbConnection connection; private OleDbDataAdapter adapter; private DataSet dataSet; private OleDbCommand command; Hàm connect cơ s d li u - Ta vi t hàm connect có nhi m v k t n i cơ s d li u như sau: private void connect(string file) {
- Xây d ng ph n m m hư ng i tư ng GVHD: Tr n Anh Dũng string connnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + file; connection = new OleDbConnection(connnectionString); } - Trong s ki n form load, ta g i hàm connect kh i t o connection private void Form1_Load(object sender, EventArgs e) { connect("E:/DH_HUFLIT/XDPMHDT/DeCuong_HuongDan_ThucHanh/HocSinh.mdb"); } Hàm l y danh sách l p k t v i combobox private DataTable getDSLop() { adapter = new OleDbDataAdapter("select * from LOP", connection); dataSet = new DataSet(); adapter.Fill(dataSet); return dataSet.Tables[0]; } - Trong s ki n formLoad, ta g i hàm l y danh sách l p và k t vào combobox private void Form1_Load(object sender, EventArgs e) { connect("E:/DH_HUFLIT/XDPMHDT/DeCuong_HuongDan_ThucHanh/HocSinh.mdb"); //Load d li u vào comboBox L p cboLop.DataSource = getDSLop(); // Column s ư c hi n th cboLop.DisplayMember = "TenLop"; // Column s ư c gi giá tr cboLop.ValueMember = "MaLop"; } L y thông tin t form vào các bi n - Khai báo các bi n sau: private string maHS, tenHS, diachi, malop; private double dtb; private DateTime ngaysinh; - Hàm l y thông tin: private void getData() { maHS = txtMaHS.Text; tenHS = txtTenHS.Text; ngaysinh = dtpNgaySinh.Value; diachi = txtDiaChi.Text; malop = (string)cmbLop.SelectedValue; dtb = Double.Parse(txtDiemTB.Text); } Hàm thêm d li u vào CSDL private void insert() { connection.Open(); string insertCommand = "INSERT INTO HOCSINH VALUES('" + maHS + "', '" +
- Xây d ng ph n m m hư ng i tư ng GVHD: Tr n Anh Dũng tenHS + "', '" + ngaysinh.ToShortDateString() + "', '" + diachi + "', " + dtb + ", '" + malop + "')"; command = new OleDbCommand(insertCommand, connection); command.ExecuteNonQuery(); connection.Close(); } - Trong s ki n Click c a btnLuu ta th c hi n lưu thông tin vào CSDL private void btnLuu_Click(object sender, EventArgs e) { getData(); insert(); MessageBox.Show("Cap nhat thanh cong", "Thong bao", MessageBoxButtons.OK, MessageBoxIcon.Information); } Hàm xóa d li u kh i CSDL - Tương t ta có hàm xóa d li u private void delete() { connection.Open(); string deleteCommand = "DELETE FROM HOCSINH WHERE MaHS = '"+maHS+"'"; command = new OleDbCommand(deleteCommand, connection); command.ExecuteNonQuery(); connection.Close(); } - Trong s ki n Click c a btnXoa ta th c hi n xóa thông tin t CSDL private void btnXoa_Click(object sender, EventArgs e) { getData(); delete(); MessageBox.Show("Xoa du lieu thanh cong", "Thong bao", MessageBoxButtons.OK, MessageBoxIcon.Information); } 3. Bài t p: a. Ki m tra d li u nh p h p l : i. Mã h c sinh và tên h c sinh ph i khác null ii. i m trung bình ph i nh p giá tr s iii. … b. Th c hi n ch c năng khi ngư i dùng nh p mã HS ã có, chương trình s hi n th thông tin HS cho phép ngư i nh p s a i và lưu l i thông tin HS ã ư c s a. ngăn ch n kh năng phát sinh l i ??? c. Không cho phép nh p các ký t không ph i là ký t s vào textbox “ i m trung bình”
- Xây d ng ph n m m hư ng i tư ng GVHD: Tr n Anh Dũng Gi i pháp ??? X lý s ki n nh p phím (KeyPress) cho textbox “ i m trung bình” d. Khi nh p d li u cho m t control xong, ngư i dùng mu n chuy n qua contol ti p theo nh p li u thì ph i nh n phím “tab” chuy n focus sang control k ti p. Tuy nhiên, i v i nhi u ngư i dùng, h l i quen v i thao tác nh n phím “Enter” chuy n qua control ti p theo Gi i pháp??? Hư ng d n: x lý s ki n KeyPress c a control tương ng Khi ngư i dùng nh n m t phím, ki m tra xem phím ó có ph i là phím “Enter” không? N u là phím “Enter” thì g i phím “TAB” private void txtMaHS_KeyPress(object sender, KeyPressEventArgs e) { //N u nh n phím enter if (e.KeyChar == 13) SendKeys.Send("{TAB}"); } e. Sinh viên t phát tri n ti p hoàn thi n chương trình trên
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Hướng dẫn thực hành Winforms với C#
8 p | 778 | 245
-
Hướng Dẫn Thực Hành Winform với C# - phần 1
6 p | 579 | 194
-
Hướng Dẫn Thực Hành Winform với C# - phần 1 (tt)
5 p | 506 | 170
-
Hướng Dẫn Thực Hành Winform - phần 8 Hướng dẫn Crystal Report – Tạo báo cáo)
13 p | 475 | 170
-
Hướng Dẫn Thực Hành Winform - phần 4 ADO.NET (tt)
8 p | 314 | 152
-
Hướng Dẫn Thực Hành Winform - phần 7 Thiết kế và xây dựng phần mềm theo mô hình 3 tầng xử lý
8 p | 327 | 151
-
Hướng Dẫn Thực Hành Winform - phần 5 ADO.NET (tt)
8 p | 305 | 144
-
Hướng Dẫn Thực Hành Winform - phần 6 Thiết kế và xây dựng phần mềm theo mô hình 2 tầng xử lý
8 p | 389 | 140
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn