Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 46 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
46
Dung lượng
0,92 MB
Nội dung
Chương LẬP TRÌNH CƠ SỞ DỮ LIỆU Lê Quý Tài quytai3985@gmail.com Nội dung 5/26/16 Tổng quan ADO.NET Kết nối sở liệu ADO.NET Xây dựng ứng dụng minh hoạ Chương Lập trình sở liệu 2/46 Tổng quan ADO.NET ADO.NET NET framework ADO.NET gì? Kiến trúc ADO.NET Các đối tượng ADO.NET 5/26/16 Chương Lập trình sở liệu 3/46 ADO.NET NET framework Microsoft NET Framework Web Services User Interface Data and XML ADO.NET XML Base Classes Common Language Runtime 5/26/16 Chương Lập trình sở liệu 4/46 ADO.NET gì? ADO.NET tập hợp lớp, interface, cấu trúc, kiểu liệu định sẵn để quản lý việc truy xuất với liệu Ứng dụng ADO.NET Managed Provider OLE DB Provider SQL Server Database SQL Managed Provider 5/26/16 Database ADO Managed Provider using System.Data; using System.Data; using System.Data.SQLClient; using System.Data.OleDB; Chương Lập trình sở liệu 5/46 Kiến trúc ADO.NET 5/26/16 Connection Command Chương Lập trình sở liệu DataReader Dataset DataAdapter 6/46 Kết nối CSDL ADO.NET 5/26/16 Connection Command DataReader DataAdaper Dataset Chương Lập trình sở liệu 7/46 2.1 Connection Thiết lập quản lý kết nối với CSDL Có loại: SqlConnection OleDbConnection Thuộc tính quan trọng: Phương thức quan trọng: Open() Close() Chú ý: 5/26/16 ConnectionString Luôn đóng Connection sau sử dụng Chương Lập trình sở liệu 8/46 2.1.Connection (tiếp) Ví dụ: SqlConnection con; //Đối tượng để kết nối = new SqlConnection(); //Khởi tạo con.ConnectionString = @"Data Source= \SQLEXPRESS;AttachDbFilename=“ +Application.StartupPath+ @"\QLSV.mdf; Integrated Security=True;Connect Timeout=30;User Instance=True"; con.Open(); //Mở kết nối Tạo ConnectString xác nhanh nhất? 5/26/16 Chương Lập trình sở liệu 9/46 2.2 Command Thực thao tác với CSDL Có loại: Thuộc tính quan trọng: Phương thức quan trọng: DDL, DML, gọi thủ tục, … SqlCommand OleDbCommand Connection CommandText ExecuteNonQuery() (thực lệnh: INSERT, UPDATE, DELETE) ExecuteScalar() (thực lệnh SELECT trả giá trị) ExecuteReader() (thực lệnh SELECT trả hay nhiều ghi) 5/26/16 Chương Lập trình sở liệu 10/46 Bước 1: Tạo sở liệu 5/26/16 Quan hệ bảng (Relationship) Chương Lập trình sở liệu 32/46 Bước 2: Thiết kế giao diện Form 5/26/16 Tên form: frmMain Chương Lập trình sở liệu 33/46 Bước 2: Thiết kế giao diện Form Tên form: frmMain Menu: thuộc tính Name Text: Name Text Name Text mnuFile Tập tin mnuTimkiem Tìm kiếm mnuThoat mnuDanhmuc Danh mục mnuFindHoadon Hoá đơn mnuFindHang Hàng Khách hàng mnuChatlieu Chất liệu mnuFindKhachhang mnuNhanvien Nhân viên mnuBaocao mnuKhachhang Khách hàng mnuBCHangton Hàng tồn mnuHanghoa Hàng hoá mnuBCDoanhthu Doanh thu mnuHoadon mnuHoadonban 5/26/16 Thoát Hoá đơn Hoá đơn bán Chương Lập trình sở liệu mnuTrogiup Báo cáo Trợ giúp mnuHientrogiup Trợ giúp mnuVainet Vài nét 34/46 Bước 2: Thiết kế giao diện Form Danh mục chất liệu 5/26/16 Tên form: frmDMChatlieu Chương Lập trình sở liệu 35/46 Bước 2: Thiết kế giao diện Form Danh mục chất liệu Các thành phần form Điều khiển TextBox Name Text txtMachatlieu txtTenchatlieu Button DataGridView 5/26/16 btnThem Thêm btnXoa Xoá btnSua Sửa btnLuu Lưu btnBoqua Bỏ qua btnDong Đóng DataGridView Chương Lập trình sở liệu 36/46 Bước 2: Thiết kế giao diện Form Danh mục nhân viên 5/26/16 Tên form: frmDMNhanvien Chương Lập trình sở liệu 37/46 Bước 2: Thiết kế giao diện Form Danh mục nhân viên Các thành phần form Điều khiển TextBox Name Text txtManhanvien txtTennhanvien txtDiachi Button btnThem, btnXoa, btnSua, btnLuu, btnBoqua, btnDong CheckBox chkGioitinh Nam MaskedTextBox mskDienthoai Mask: Phone Number mskNgaysinh Mask: Short Date DataGridView 5/26/16 DataGridView Chương Lập trình sở liệu 38/46 Bước 2: Thiết kế giao diện Form Danh mục khách hàng 5/26/16 Tên form: frmDMKhachhang Chương Lập trình sở liệu 39/46 Form Danh mục khách hàng Các thành phần form Điều khiển TextBox Name Text txtMakhach txtTenkhach txtDiachi 5/26/16 Button btnThem, btnXoa, btnSua, btnLuu, btnBoqua, btnDong CheckBox chkGioitinh Nam MaskedTextBox mskDienthoai Mask: Phone Number DataGridView DataGridView Chương Lập trình sở liệu 40/46 Form Danh mục hàng hoá 5/26/16 Tên form: frmDMHang Chương Lập trình sở liệu 41/46 Form Danh mục hàng hoá Các thành phần form Điều khiển TextBox Name txtMahang, txtTenhang, txtSoluong, txtDongianhap, txtDongiaban, txtAnh, txtGhichu ComboBox cboMachatlieu PictureBox picAnh DataGridView DataGridView Button btnThem, btnXoa, btnSua, btnLuu, btnBoqua, btnTimkiem, btnHienthi, btnDong, btnOpen 5/26/16 Chương Lập trình sở liệu 42/46 Form Hoá đơn bán hàng 5/26/16 Tên form: frmHoadonBan Chương Lập trình sở liệu 43/46 Form Hoá đơn bán Các thành phần form Điều khiển Name Text Label lblBangchu Bằng chữ: TextBox txtMaHDBan, txtNgayban, txtTennhanvien,txtTenkhach, txtDiachi, txtDienthoai, txtTongtien, txtTenhang, txtDongiaban, txtSoluong, txtGiamgia, txtThanhtien ComboBox cboManhanvien, cboMakhach, cboMahang, cboMaHDBan DataGridView DataGridView Button btnNgay, btnThemmoi, btnLuu, btnXoa, btn Inhoadon, btnDong, btnTimkiem 5/26/16 Chương Lập trình sở liệu 44/46 Form Tìm kiếm hoá đơn 5/26/16 Tên form: frmTimHDBan Chương Lập trình sở liệu 45/46 Form Tìm kiếm hoá đơn Các thành phần form Điều khiển Name TextBox txtMaHDBan, txtThang, txtNam, txtManhanvien, txtMakhach, txtTongtien 5/26/16 DataGridView DataGridView Button btnTimkiem, btnTimlai, btnDong Chương Lập trình sở liệu 46/46 [...]... bán) Chương 5 Lập trình c sở dữ liệu 30/46 Bư c 1: Tạo c sở dữ liệu Tên tập tin: Quanlybanhang.mdf C c bảng 5/ 26/16 Bảng tblChitietHDBan (chi tiết hoá đơn bán) Chương 5 Lập trình c sở dữ liệu 31/46 Bư c 1: Tạo c sở dữ liệu 5/ 26/16 Quan hệ giữa c c bảng (Relationship) Chương 5 Lập trình c sở dữ liệu 32/46 Bư c 2: Thiết kế giao diện Form chính 5/ 26/16 Tên form: frmMain Chương 5 Lập. .. Chương 5 Lập trình c sở dữ liệu 27/46 Bư c 1: Tạo c sở dữ liệu Tên tập tin: Quanlybanhang.mdf C c bảng 5/ 26/16 Bảng tblHang (hàng) Chương 5 Lập trình c sở dữ liệu 28/46 Bư c 1: Tạo c sở dữ liệu Tên tập tin: Quanlybanhang.mdf C c bảng 5/ 26/16 Bảng tblNhanvien (nhân viên) Chương 5 Lập trình c sở dữ liệu 29/46 Bư c 1: Tạo c sở dữ liệu Tên tập tin: Quanlybanhang.mdf C c bảng 5/ 26/16... } 5/ 26/16 Chương 5 Lập trình c sở dữ liệu 25/ 46 Bài tập về nhà Bài toán: 5/ 26/16 Xây dựng chương trình quản lý c a hàng Bán hàng lưu niệm Yêu c u: Bư c 1: Tạo c sở dữ liệu Bư c 2: Thiết kế giao diện Chương 5 Lập trình c sở dữ liệu 26/46 Bài tập về nhà 5/ 26/16 Bư c 1: Tạo c sở dữ liệu Tên tập tin: Quanlybanhang.mdf C c bảng Bảng tblChatlieu (chất liệu) Bảng tblKhach (khách) Chương. .. c sở dữ liệu Bư c 4: Xử lý c c sự kiện Chương 5 Lập trình c sở dữ liệu 17/46 3 Xây dựng ứng dụng minh hoạ 5/ 26/16 Bư c 1: Tạo c sở dữ liệu Tạo ứng dụng mới Tạo c sở dữ liệu Ở khung Solution Explorer, nháy phải chuột lên tên ứng dụng, chọn Add New Item… Chọn Data Service-based Database (ho c SQL Database trong Visual Studio Net 20 05) Tạo bảng tblSinhvien Chương 5 Lập trình c sở. .. rd[1].ToString(); } con.Close(); 5/ 26/16 Chương 5 Lập trình c sở dữ liệu 13/46 2.4 DataAdapter Là c u nối giữa CSDL và Dataset C c thu c tính quan trọng: C c phương th c quan trọng: 5/ 26/16 SelectCommand InsertCommand Fill() Update() UpdateCommand DeleteCommand C c chế tự động đóng Connection Chương 5 Lập trình c sở dữ liệu 14/46 2.4 DataAdapter (tiếp) Ví dụ - Hiển thị dữ liệu: string... Dataset 5/ 26/16 Database Chương 5 Lập trình c sở dữ liệu 16/46 3 Xây dựng ứng dụng minh hoạ Bài toán Xây dựng ứng dụng quản lý sinh viên đơn giản 5/ 26/16 Cho phép đ c dữ liệu từ csdl sinh viên Th c hiện c c thao t c: Thêm, sửa, xoá C sở dữ liệu: gồm bảng SINHVIEN(MaSV, Hoten, Ngaysinh, Khoa, Lop, Diachi) C c bư c th c hiện Bư c 1: Tạo c sở dữ liệu Bư c 2: Thiết kế giao diện Bư c 3: Th c. .. Thường handle dữ liệu trả về từ phương th c ExecuteReader() c a Command SqlDataReader OleDbReader Đối với c c form chỉ SELECT dữ liệu, NÊN DÙNG DataReader để c t c độ xử lý nhanh hơn Chương 5 Lập trình c sở dữ liệu 12/46 2.3 DataReader (tiếp) Ví dụ: SqlCommand cmd = new SqlCommand(); cmd.Connection = con; cmd.CommandText = “SELECT MaSV, Hoten FROM tblSinhvien”; SqlDataReader rd = cmd.ExecuteReader();... mnuHanghoa Hàng hoá mnuBCDoanhthu Doanh thu mnuHoadon mnuHoadonban 5/ 26/16 Thoát Hoá đơn Hoá đơn bán Chương 5 Lập trình c sở dữ liệu mnuTrogiup Báo c o Trợ giúp mnuHientrogiup Trợ giúp mnuVainet Vài nét 34/46 Bư c 2: Thiết kế giao diện Form Danh m c chất liệu 5/ 26/16 Tên form: frmDMChatlieu Chương 5 Lập trình c sở dữ liệu 35/ 46 Bư c 2: Thiết kế giao diện Form Danh m c chất liệu C c thành phần trên...2.2.Command (tiếp) Ví dụ: SqlCommand cmd = new SqlCommand(); cmd.Connection = con; cmd.CommandText = “UPDATE NhanVien set Luong = Luong + 100000 WHERE MaNV = 01”; cmd.ExecuteNonQuery(); … con.Close(); 5/ 26/16 Chương 5 Lập trình c sở dữ liệu 11/46 2.3 DataReader 5/ 26/16 C dạng con trỏ, dùng để handle dữ liệu trả về từ CSDL C 2 loại: Khuyến c o: Đ c điểm: Con trỏ không... MyData.Fill(tblSinhvien); //Đổ dữ liệu từ DataAdapter vào bảng dataGridView.DataSource = tblSinhvien; } 5/ 26/16 Chương 5 Lập trình c sở dữ liệu 21/46 3 Xây dựng ứng dụng minh hoạ Bư c 4: Xử lý c c sự kiện Th c hiện lệnh SQL public void RunSQL(string sql) //Th c hiện một c u lệnh SQL { SqlCommand cmd = new SqlCommand(); //Đối tượng để th c hiện lệnh cmd.CommandText = sql; cmd.Connection = con; try { cmd.ExecuteNonQuery();