Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 12 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
12
Dung lượng
103,5 KB
Nội dung
LẬP TRÌNHCƠSỞDỮLIỆUVỚIADO Bài 1: Tạo 1 form dùng để quản lý Khóa học trong CSDL SinhVien.mdb, có các chức năng: duyệt các mẫu tin, thêm mới, sửa dữ liệu, lưu, xóa và thoát. CÁCH 1: DÙNG CONTROL ADODC1 (không viết dòng cod nào) -> frmKhoa CÁCH 2: DÙNG CONTROL ADODC1 VÀ ĐỐI TƯỢNG RECORDSET (giao diện không dùng control ADODC, mà thiết kế lại) -> frmKhoaTest Option Explicit Dim rs As New ADODB.Recordset Private Sub cmdCuoi_Click() rs.MoveLast txtDem.Text = rs.AbsolutePosition & "/" & rs.RecordCount End Sub Private Sub cmdDau_Click() rs.MoveFirst txtDem.Text = rs.AbsolutePosition & "/" & rs.RecordCount End Sub Private Sub cmdLuu_Click() 'kiem tra cac text box da nhap If txtMaKhoa.Text = vbNullString Then MsgBox "Phao nhap Ma khoa", vbInformation, "Loi nhap lieu" txtMaKhoa.SetFocus Exit Sub End If If txtTenKhoa.Text = vbNullString Then MsgBox "Phao nhap Ten khoa", vbInformation, "Loi nhap lieu" txtTenKhoa.SetFocus Exit Sub End If 'cap nhat vao bang rs.Update 'cap nhat lai text dem txtDem.Text = rs.AbsolutePosition & "/" & rs.RecordCount 'cap nhat lai text box txtTenKhoa.Locked = True txtDienThoai.Locked = True 'cap nhat lai button cmdLuu.Enabled = False cmdThem.Enabled = True cmdSua.Enabled = True cmdXoa.Enabled = True End Sub Private Sub cmdSau_Click() rs.MoveNext If rs.EOF = True Then rs.MoveLast txtDem.Text = rs.AbsolutePosition & "/" & rs.RecordCount End Sub Private Sub cmdSua_Click() 'cho text box sua Dieu_Khien_TextBox False 'dieu kien cac button cmdThem.Enabled = False cmdSua.Enabled = False cmdXoa.Enabled = False cmdLuu.Enabled = True End Sub Private Sub cmdThem_Click() rs.AddNew txtMaKhoa.Locked = False txtDienThoai.Locked = False txtTenKhoa.Locked = False txtMaKhoa.SetFocus 'dieu kien cac button cmdThem.Enabled = False cmdSua.Enabled = False cmdXoa.Enabled = False cmdLuu.Enabled = True End Sub Private Sub cmdThoat_Click() Unload Me End Sub Private Sub cmdTruoc_Click() rs.MovePrevious If rs.BOF = True Then rs.MoveFirst txtDem.Text = rs.AbsolutePosition & "/" & rs.RecordCount End Sub Private Sub cmdXoa_Click() 'hoi xac nhan tu user Dim n As Integer n = MsgBox("Ban muon xoa khong?", vbCritical + vbYesNo, "Xoa du lieu") If n = vbNo Then rs.MoveFirst Else 'xoa record rs.Delete MsgBox "Ban da xoa thanh cong", vbInformation, "Xac nhan xoa" 'cap nhat lai button rs.MoveLast cmdLuu.Enabled = False cmdThem.Enabled = True cmdSua.Enabled = True cmdXoa.Enabled = True End If 'cap nhat text box dem txtDem.Text = rs.AbsolutePosition & "/" & rs.RecordCount End Sub Private Sub Form_Load() 'khoi tao gia tri Set rs = Adodc1.Recordset txtDem.Text = rs.AbsolutePosition & "/" & rs.RecordCount 'dieu khien text box va button Dieu_Khien_TextBox True cmdLuu.Enabled = False End Sub Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) 'giai phong cac tai nguyen (record set) rs.Close Set rs = Nothing End Sub Private Sub Dieu_Khien_TextBox(khoa As Boolean) 'dieu khien text box txtTenKhoa.Locked = khoa txtDienThoai.Locked = khoa End Sub CÁCH 3: KHÔNG DÙNG CONTROL ADODC1, DÙNG ĐỐI TƯỢNG CONNECTION VÀ RECORDSET (thiết kế lại màn hình) -> frmKhoaAdv Option Explicit Dim rs As New ADODB.Recordset Dim cnn As New ADODB.Connection Dim fThem As Boolean Private Sub cmdCuoi_Click() rs.MoveLast Lien_Ket_Du_Lieu_Khoa txtDem.Text = rs.AbsolutePosition & "/" & rs.RecordCount End Sub Private Sub cmdDau_Click() rs.MoveFirst Lien_Ket_Du_Lieu_Khoa txtDem.Text = rs.AbsolutePosition & "/" & rs.RecordCount End Sub Private Sub cmdLuu_Click() 'kiem tra cac text box da nhap If txtMaKhoa.Text = vbNullString Then MsgBox "Phao nhap Ma khoa", vbInformation, "Loi nhap lieu" txtMaKhoa.SetFocus Exit Sub End If If txtTenKhoa.Text = vbNullString Then MsgBox "Phao nhap Ten khoa", vbInformation, "Loi nhap lieu" txtTenKhoa.SetFocus Exit Sub End If 'cap nhat vao bang 'neu la them moi If fThem = True Then rs.AddNew 'ghi len bang rs("makhoa") = txtMaKhoa.Text rs("tenKhoa") = txtTenKhoa.Text rs("dienthoai") = txtDienThoai.Text rs.Update 'cap nhat lai text dem txtDem.Text = rs.AbsolutePosition & "/" & rs.RecordCount 'cap nhat lai text box txtTenKhoa.Locked = True txtDienThoai.Locked = True 'cap nhat lai button cmdLuu.Enabled = False cmdThem.Enabled = True cmdSua.Enabled = True cmdXoa.Enabled = True End Sub Private Sub cmdSau_Click() rs.MoveNext If rs.EOF = True Then rs.MoveLast Lien_Ket_Du_Lieu_Khoa txtDem.Text = rs.AbsolutePosition & "/" & rs.RecordCount End Sub Private Sub cmdSua_Click() 'cho text box sua Dieu_Khien_TextBox False txtTenKhoa.SetFocus 'dieu kien cac button cmdThem.Enabled = False cmdSua.Enabled = False cmdXoa.Enabled = False cmdLuu.Enabled = True 'cap nhat lai co them fThem = False End Sub Private Sub cmdThem_Click() txtMaKhoa.Locked = False txtMaKhoa.Text = vbNullString txtDienThoai.Locked = False txtDienThoai.Text = vbNullString txtTenKhoa.Locked = False txtTenKhoa.Text = vbNullString txtMaKhoa.SetFocus 'dieu kien cac button cmdThem.Enabled = False cmdSua.Enabled = False cmdXoa.Enabled = False cmdLuu.Enabled = True 'cap nhat lai co them fThem = True End Sub Private Sub cmdThoat_Click() Unload Me End Sub Private Sub cmdTruoc_Click() rs.MovePrevious If rs.BOF = True Then rs.MoveFirst Lien_Ket_Du_Lieu_Khoa txtDem.Text = rs.AbsolutePosition & "/" & rs.RecordCount End Sub Private Sub cmdXoa_Click() 'hoi xac nhan tu user Dim n As Integer n = MsgBox("Ban muon xoa khong?", vbCritical + vbYesNo, "Xoa du lieu") If n = vbNo Then rs.MoveFirst Else 'xoa record rs.Delete MsgBox "Ban da xoa thanh cong", vbInformation, "Xac nhan xoa" 'cap nhat lai button rs.MoveLast cmdLuu.Enabled = False cmdThem.Enabled = True cmdSua.Enabled = True cmdXoa.Enabled = True End If 'cap nhat text box dem txtDem.Text = rs.AbsolutePosition & "/" & rs.RecordCount Lien_Ket_Du_Lieu_Khoa End Sub Private Sub Form_Load() 'ket noi voi cosodulieu cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Tan\DAYHOC\KTLT2(VB2)\Practice\Quan ly Sinh vien\SinhVien.mdb;" cnn.CursorLocation = adUseClient If cnn.State = adStateClosed Then cnn.Open rs.Open "KHOA", cnn, adOpenDynamic, adLockOptimistic, adCmdTable 'khoi tao gia tri rs.MoveFirst Lien_Ket_Du_Lieu_Khoa txtDem.Text = rs.AbsolutePosition & "/" & rs.RecordCount fThem = False 'dieu khien text box va button Dieu_Khien_TextBox True cmdLuu.Enabled = False End Sub Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) 'giai phong cac tai nguyen (record set,connection) If rs.State = adStateOpen Then rs.Close Set rs = Nothing If cnn.State = adStateOpen Then cnn.Close Set cnn = Nothing End Sub Private Sub Dieu_Khien_TextBox(khoa As Boolean) 'dieu khien text box txtTenKhoa.Locked = khoa txtDienThoai.Locked = khoa End Sub Private Sub Lien_Ket_Du_Lieu_Khoa() txtMaKhoa.Text = rs("makhoa") txtTenKhoa.Text = rs("tenKhoa") txtDienThoai.Text = rs("DienThoai") End Sub CÁCH 4: CÁCH 3 + DÙNG LƯỚI DATAGRID ĐỂ HIỂN THỊ -> frmKhoaAdv2b Option Explicit Dim rs As New ADODB.Recordset Dim cnn As New ADODB.Connection Dim fThem As Boolean Private Sub cmdCuoi_Click() rs.MoveLast Lien_Ket_Du_Lieu_Khoa txtDem.Text = rs.AbsolutePosition & "/" & rs.RecordCount End Sub Private Sub cmdDau_Click() rs.MoveFirst Lien_Ket_Du_Lieu_Khoa txtDem.Text = rs.AbsolutePosition & "/" & rs.RecordCount End Sub Private Sub cmdLuu_Click() 'kiem tra cac text box da nhap If txtMaKhoa.Text = vbNullString Then MsgBox "Phao nhap Ma khoa", vbInformation, "Loi nhap lieu" txtMaKhoa.SetFocus Exit Sub End If If txtTenKhoa.Text = vbNullString Then MsgBox "Phao nhap Ten khoa", vbInformation, "Loi nhap lieu" txtTenKhoa.SetFocus Exit Sub End If 'cap nhat vao bang 'neu la them moi If fThem = True Then rs.AddNew End If 'ghi len bang rs("makhoa") = txtMaKhoa.Text rs("tenKhoa") = txtTenKhoa.Text rs("dienthoai") = txtDienThoai.Text rs.Update 'cap nhat lai text dem txtDem.Text = rs.AbsolutePosition & "/" & rs.RecordCount 'cap nhat lai text box txtTenKhoa.Locked = True txtDienThoai.Locked = True 'cap nhat lai button cmdLuu.Enabled = False cmdThem.Enabled = True cmdSua.Enabled = True cmdXoa.Enabled = True End Sub Private Sub cmdSau_Click() rs.MoveNext If rs.EOF = True Then rs.MoveLast Lien_Ket_Du_Lieu_Khoa txtDem.Text = rs.AbsolutePosition & "/" & rs.RecordCount End Sub Private Sub cmdSua_Click() 'cho text box sua Dieu_Khien_TextBox False txtTenKhoa.SetFocus 'dieu kien cac button cmdThem.Enabled = False cmdSua.Enabled = False cmdXoa.Enabled = False cmdLuu.Enabled = True 'cap nhat lai co them fThem = False End Sub Private Sub cmdThem_Click() txtMaKhoa.Locked = False txtMaKhoa.Text = vbNullString txtDienThoai.Locked = False txtDienThoai.Text = vbNullString txtTenKhoa.Locked = False txtTenKhoa.Text = vbNullString txtMaKhoa.SetFocus 'dieu kien cac button cmdThem.Enabled = False cmdSua.Enabled = False cmdXoa.Enabled = False cmdLuu.Enabled = True 'cap nhat lai co them fThem = True End Sub Private Sub cmdThoat_Click() Unload Me End Sub Private Sub cmdTruoc_Click() rs.MovePrevious If rs.BOF = True Then rs.MoveFirst Lien_Ket_Du_Lieu_Khoa txtDem.Text = rs.AbsolutePosition & "/" & rs.RecordCount End Sub Private Sub cmdXoa_Click() 'hoi xac nhan tu user Dim n As Integer n = MsgBox("Ban muon xoa khong?", vbCritical + vbYesNo, "Xoa du lieu") If n = vbNo Then rs.MoveFirst Else [...]... cnn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Tan\DAYHOC\KTLT2(VB2)\Practice\Quan ly Sinh vien\SinhVien.mdb;" cnn.CursorLocation = adUseClient If cnn.State = adStateClosed Then cnn.Open rs.Open "KHOA", cnn, adOpenDynamic, adLockOptimistic, adCmdTable 'khoi tao luoi data grid Set DataGrid1.DataSource = rs 'khoi tao gia tri rs.MoveFirst Lien_Ket_Du_Lieu_Khoa txtDem.Text = rs.AbsolutePosition & "/" & rs.RecordCount . LẬP TRÌNH CƠ SỞ DỮ LIỆU VỚI ADO Bài 1: Tạo 1 form dùng để quản lý Khóa học trong CSDL SinhVien.mdb, có các chức năng: duyệt các mẫu tin, thêm mới, sửa dữ liệu, lưu, xóa và. và thoát. CÁCH 1: DÙNG CONTROL ADODC1 (không viết dòng cod nào) -> frmKhoa CÁCH 2: DÙNG CONTROL ADODC1 VÀ ĐỐI TƯỢNG RECORDSET (giao diện không dùng control ADODC, mà thiết kế lại) -> frmKhoaTest Option. 3: KHÔNG DÙNG CONTROL ADODC1, DÙNG ĐỐI TƯỢNG CONNECTION VÀ RECORDSET (thiết kế lại màn hình) -> frmKhoaAdv Option Explicit Dim rs As New ADODB.Recordset Dim cnn As New ADODB.Connection Dim