Kết nối cơ sở dữ liệu với VC6.0

Truy xuất với ODBC/DAO

Truy xuất với OLEDB

Truy xuất với ADO

 

ppt20 trang | Chia sẻ: Mr Hưng | Lượt xem: 778 | Lượt tải: 0download
Nội dung tài liệu Kết nối cơ sở dữ liệu với VC6.0, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Kết nối CSDL với VC6.0Giảng viên : Trần Anh Tuấn ABộ Môn : Ứng dụng tin họcNội dungTruy xuất với ODBC/DAO Truy xuất với OLEDB Truy xuất với ADO Truy xuất với ODBC/DAOCấu trúc ODBC :Cách dùng :New Class đặt tên CTestSet (base : CRecordSet)Chọn DB Access muốn truy xuấtTrong CTestView thêm biến : CTestSet* m_pSetTrong CTestDoc thêm biến :CTestSet m_TestSetTruy xuất với ODBC/DAOKhởi Tạo Kết Nối :Truy xuất với ODBC/DAOvoid CTestView::OnInitialUpdate() { CScrollView::OnInitialUpdate(); CSize sizeTotal(8000, 10500); SetScrollSizes(MM_HIENGLISH, sizeTotal); m_pSet = &GetDocument()->m_TestSet; // Remember that documents/views are reused in SDI applications! if (m_pSet->IsOpen()) { m_pSet->Close(); } m_pSet->Open(); } Truy Xuất Dữ Liệu :void CEx31aView::OnDraw(CDC* pDC) { TEXTMETRIC tm; pDC->GetTextMetrics(&tm); int nLineHeight=tm.tmHeight+tm.tmExternalLeading; CPoint pText(0,0); int y = 0; CString str; if (m_pSet->IsBOF()) { // detects empty recordset return; } m_pSet->MoveFirst(); // fails if recordset is empty while (!m_pSet->IsEOF()) { str.Format("%ld", m_pSet->m_StudentID); pDC->TextOut(pText.x, pText.y, str); pDC->TextOut(pText.x+1000, pText.y, m_pSet->m_Name); str.Format("%d", m_pSet->m_GradYear); pDC->TextOut(pText.x+4000, pText.y, str); m_pSet->MoveNext(); pText.y -= nLineHeight; } }Truy xuất với ODBC/DAOTruy xuất với ODBC/DAOCách dùng DAOCDaoDatabase aDB;COleVariant var;aDB.Open(“C:\\.......\\SinhVien.mdb”,FALSE,TRUE)CDaoRecordset aRS(&aDB);aRS.Open(AFX_DAO_USE_DEFAULT_TYPE, ”Select * From ” , 0 );While(!aRS.IsEOF()){Var = aRS.GetFieldValue(0);CString Str = (LPCSTR)var.bstrVal;aRS.MoveNext();}aRS.Close() ; aDB.Close();Truy Xuất OLEDBOLEDB (Object Linking and Embedding Data Base )OLEDB là một tập hợp các giao diện truy xuất dữ liệu thông qua COM. Cấu trúc :Enumerators: có tác vụ tìm các nguồn dữ liệu khả dụngData source objects: Data source objects chứa các cơ chế kết nối tới nguồn dữ liệuSessions: Sessions thể hiện một kết nối(phiên làm việc) đến nguồn dữ liệuTransaction: là đối tượng quản lý các thao tác truy xuất dữ liệu và bảo đảm an toàn dữ liệuCommands: là đối tượng cho phép thực thi các lệnh SQLADO là một tập hợp các giao diện truy xuất dữ liệu thông qua COM (tương tự như OLEDB nhưng sử dụng đơn giản hơn). ADO đóng vai trò trung gian tương tác với chương trình ứng dụng và cơ sở dữ liệu, được thể hiện như hình sau: Truy Xuất ADOCấu trúc ADO Connection: là đối tượng quản lý các tác vụ truy cập/kết nối cơ sở dữ liệu. Command: là đối tượng quản lý các tác vụ cập nhật dữ liệu Recordset: là đối tượng quản lý dữ liệu truy vấn được Error: là đối tượng quản lý lỗi xãy ra Truy Xuất ADOCách truy xuất : Xem cụ thể trong fileKhai báo chuỗi connection :// Kết nối đến Access: m_szConnection="Provider=Microsoft.JET.OLEDB.4.0;Datasource=xxx”; // Kết nối đến SQL Server: m_szConnection="Provider=SQLOLEDB;Datasource=my_server_name;//Visual Fox ProstrConnection = _T("Driver={Microsoft Visual Foxpro Driver};UID=;" SourceType=DBC;SourceDB=C:\\DatabasePath\\MyDatabase.dbc;Exclusive=No"); Truy Xuất ADO//ODBC Driver for OraclestrConnect = _T(“Driver={Microsoft ODBC for Oracle}; Server=OracleServer.world;" "Uid=MyUsername;Pwd=MyPassword;“); //ODBC Driver for MySQLStrConnect = _T("Driver={MySQL ODBC 3.51 Driver};Server=localhost;" "Database=MyDatabase;User=MyUserName;Password=MyPassword;Option=4;“); .Truy Xuất ADOĐưa ADO và OLE_DB vào Ứng dụngTạo project SDI với lớp cơ sở CFormViewĐăng ký các ActiveX ControlsĐưa ADO và OLE_DB vào Ứng dụngĐưa ADO và OLE_DB vào Ứng dụngĐưa ADO và OLE_DB vào Ứng dụng// Query DataUpdateData(TRUE);m_ado.SetRecordSource(m_query);m_ado.Refresh();//Lấy từng dữ liệuC_Recordset cRS;cRS = m_ado.GetRecordset();

Các file đính kèm theo tài liệu này:

  • pptket_noi_csdl_voi_vc6_0_1217.ppt