You are on page 1of 63

i Hc S Phm Tp.

H Ch Minh Khoa Ton Tin Hc

LP TRNH WINDOWS

Lp trnh c s d liu vi th vin ADO


(ADO ACTIVEX DATA OBJECT)

Tng quan v lp trnh CSDL Th vin ADO Lp trnh CSDL vi ADO


Trn Ngc Bo - Email: tnbao.dhsp@gmail.com

i Hc S Phm Tp. H Ch Minh Khoa Ton Tin Hc

LP TRNH WINDOWS

Lp trnh c s d liu vi th vin ADO


(ADO ACTIVEX DATA OBJECT)

Tng quan v lp trnh CSDL Th vin ADO Lp trnh CSDL vi ADO

ng dng qun l
BI GI ING H PHN LP TR C N RNH WINDOWS S

H thng qun l hc sinh: lu tr thng tin lin quan n hc sinh H thng qun l sinh vin: lu tr thng tin lin quan n sinh vin H thng qun l nhn s: lu tr thng tin lin quan nhn vin trong cng ty n h H thng qun l tin lng H thng qun l k ton H thng qun tr d n ..
TRN NGC BO
3 KHOA TON -TIN HC

LP TR L RNH CSDL VI AD C V DO

I HC S PHM TP.HCM

(3)

ng dng Windows (Windows Application)


BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Thng tin hc sinh c lu tr nh th no ?


TRN NGC BO
4 KHOA TON -TIN HC

I HC S PHM TP.HCM

(4)

ng dng Windows (Windows Application)


BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Thng tin nhn vin c lu tr nh th no ?


TRN NGC BO
5 KHOA TON -TIN HC

I HC S PHM TP.HCM

(5)

Mu biu trong cc
BI GI ING H PHN LP TR C N RNH WINDOWS S

ng dng

LP TR L RNH CSDL VI AD C V DO Thng tin th hin trn bo co c ly t u ?


TRN NGC BO
6 KHOA TON -TIN HC

I HC S PHM TP.HCM

(6)

Mu biu trong cc
BI GI ING H PHN LP TR C N RNH WINDOWS S

ng dng

LP TR L RNH CSDL VI AD C V DO Thng tin th hin trn bo co c ly t u ?


TRN NGC BO
7 KHOA TON -TIN HC

I HC S PHM TP.HCM

(7)

D liu trong cc
BI GI ING H PHN LP TR C N RNH WINDOWS S

ng dng qun l

Thng tin hc sinh c lu tr nh th no ? LP TR L RNH CSDL VI AD C V DO Tt c thng tin lin quan n hc sinh nh: L lch hc sinh, im thi, chuyn cn, lp hc, khi. c lu tr trong C S D LIU g Thng tin nhn vin c lu tr nh th no ? Tt c thng tin lin quan n nhn vin nh: L lch nhn vin, qu trnh cng tc, qu trnh lng, kh thng, k l l khen h lut.c l lut. c lu tr trong C S D LIU Thng tin th hin trn bo co c ly t u ? Tt c thng tin th hin trn bo co c ly g y t C S D LIU
TRN NGC BO
8 KHOA TON -TIN HC

I HC S PHM TP.HCM

(8)

Tng tc d liu: thm, xa,...


BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Ly d liu

Thm d liu Xa X d li liu


TRN NGC BO

Sa S d liu li
I HC S PHM TP.HCM (9)

9 KHOA TON -TIN HC

Tng tc d liu: thm, xa,...


BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Thm d liu Cp nht d liu Xa d liu Ly d liu y

Tt c cc thao tc THM, XA, SA, TRUY VN d liu u lin quan n ngn SQL: INSERT, DELETE, UPDATE INSERT DELETE UPDATE, SELECT
TRN NGC BO KHOA TON -TIN10 HC I HC S PHM TP.HCM (10) 10)

Lnh INSERT (tt)


BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Dng thm 1 hay nhiu dng vo g Table trong CSDL C php (thm 1 dng)
INSERT INTO <tn bng>(<danh sch cc thuc tnh>) VALUES (<danh sch cc gi tr>)
Thm mi mt nhn vin c h = Le, tn lt = Van, tn = Tuyen vi m s = NV001 vo Table NhanVien
INSERT INTO NHANVIEN(HONV, TENLOT, TENNV, MANV) ( , , , ) VALUES (Le, Van, Tuyen, NV001)

TRN NGC BO

KHOA TON -TIN11 HC

I HC S PHM TP.HCM

(11) 11)

Lnh DELETE
BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Dng xa cc dng ca bng C php h


DELETE FROM <tn bng> [WHERE <iu kin>]
Xo nhn vin c m s = 345345345 trong Table NhanVien DELETE FROM NHANVIEN O WHERE MANV=345345345 Xo tt c nhn vin c trong Table NhanVien DELETE FROM NHANVIEN
TRN NGC BO KHOA TON -TIN12 HC I HC S PHM TP.HCM (12) 12)

Lnh UPDATE
BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Dng thay i gi tr ca thuc tnh cho cc dng ca bng C php


UPDATE <tn bng> SET <tn thuc tnh>=<gi tr mi>, <tn thuc tnh>=<gi tr mi> mi>, [WHERE <iu kin>]

TRN NGC BO

KHOA TON -TIN13 HC

I HC S PHM TP.HCM

(13) 13)

Lnh UPDATE
BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

V d
Sa thuc tnh ngy sinh ca nhn vin c m s = 345345345 trong Table NhanVien l 08/12/1965 UPDATE NHANVIEN SET NGSINH=08/12/1965 WHERE MANV=333445555 Sa thuc tnh lng ca tt c nhn vin bng lng c * 1.1

UPDATE NHANVIEN SET LUONG=LUONG*1.1

TRN NGC BO

KHOA TON -TIN14 HC

I HC S PHM TP.HCM

(14) 14)

C PHP CU LNH SELECT


BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

SELECT FROM WHERE GROUP BY HAVING ORDER BY

<Danh sch cc ct c chn> < Danh sch cc bng> <iu kin chn> <Danh sch ct cn nhm> < iu kin nhm> < Danh sch ct cn sp xp>

Dng ly d liu t CSDL hin th ln mn hnh, report,

TRN NGC BO

KHOA TON -TIN15 HC

I HC S PHM TP.HCM

(15) 15)

Lp
BI GI ING H PHN LP TR C N RNH WINDOWS S

trnh CSDL trong ng dng qun l


Thnh phn giao din

LP TR L RNH CSDL VI AD C V DO

CT Nhn s

Kt ni CSDL

Giao tip d liu p

CSDL

Thnh phn d liu

TRN NGC BO

KHOA TON -TIN16 HC

I HC S PHM TP.HCM

(16) 16)

Lp trnh CSDL trong ng dng qun l


BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

CT Nhn s

Thnh phn giao din: Visual Basic, Visual C++, C#, VB.NET, Delphi Giao tip d liu: ODBC, DAO, ADODB, ADO.NET,.. DAO ADODB ADO NET

Kt ni CSDL

CSDL

Thnh phn d liu: MS Access, SQL Server, Oracle,


KHOA TON -TIN17 HC I HC S PHM TP.HCM (17) 17)

TRN NGC BO

Mt s h qun tr CSDL thng dng


BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Thnh phn d liu: MS Access, SQL Server, Oracle, Oracle MS Access 2000/XP/2003 MS SQL Server 7.0/2000/2005

CSDL

Oracle 8i/9i/10i/11i My SQL

TRN NGC BO

KHOA TON -TIN18 HC

I HC S PHM TP.HCM

(18) 18)

i Hc S Phm Tp. H Ch Minh Khoa Ton Tin Hc

LP TRNH WINDOWS

Lp trnh c s d liu vi th vin ADO


(ADO ACTIVEX DATA OBJECT)

Tng quan v lp trnh CSDL Th vin ADO Lp trnh CSDL vi ADO

S dng th vin ADO


BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Lm th no s dng c th vin ADO kt ni d liu trong Visual C++ ?

To CMyADO Class :
// Thm dng di y vo u Class .

#import "C:\Program Files\Common Files\System\ADO\msado15.dll" \ no_namespace rename("EOF", "EndOfFile")

To InitSQLServer() Function trong CMyADO Class :


BOOL CMyADO::InitSQLServer() { if(FAILED(CoInitialize(NULL))) return FALSE t FALSE; return TRUE; } TRN NGC BO KHOA TON -TIN20 HC I HC S PHM TP.HCM (20) 20)

Th vin ADO
BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

TRN NGC BO

KHOA TON -TIN21 HC

I HC S PHM TP.HCM

(21) 21)

Th vin ADO
BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Connection Command RecordSet Field Parameter

TRN NGC BO

KHOA TON -TIN22 HC

I HC S PHM TP.HCM

(22) 22)

Kt ni Data Source
BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

MS Access

Connection C ti
ng dng

MS SQL Server Q

File *.mdb no ? VD: QLHS.mdb, QLNS.mdb QLNS mdb

Connection
ng dng

Server ? S DatabaseName ? User Name ? Password ? I HC S PHM TP.HCM (23) 23)

TRN NGC BO

KHOA TON -TIN23 HC

i tng Connection
BI GI ING H PHN LP TR C N RNH WINDOWS S

ngha

LP TR L RNH CSDL VI AD C V DO

i tng Connection dng m kt ni vi ngun c s d g g g liu, c th hiu i tng Connection ng vai tr l cha kha m kt ni gia ng dng vi c s d liu (Access, SQL Server, Oracle,) V d: kt ni ng dng qun l hc sinh vi c s d liu qun l hc sinh c lu tr trong Access chng ta cn to mt i tng Connection ch n tp tin Access, v d QLHS.mdb hay g p y C:\C4W\Data\ C:\C4W\Data\QLHS.mdb kt ni ng dng qun l hc sinh vi c s d liu qun l hc sinh c lu tr trong SQL Server chng ta cn to mt i tng Connection ch n DB no ? Server no ? Vi User v password no ? p
TRN NGC BO KHOA TON -TIN24 HC I HC S PHM TP.HCM (24) 24)

i tng Connection
BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Connection object

Properties Atributes At ib t CommandTimeOut ConnectionString ConnectionTimeOut CursorLocation DefaultDatabase Errors Collection Isolation Level Mode Properties collection Provider P id State Version

Method B i T Begin Trans Cancel Close CommitTrans Execute Open OpenShema RollbackTrans

Event B i T BeginTransComplete C l t CommitTransComplete ConnectComplete DisConnect ExecuteComplete InfoMessage RollbackTransComplete WillConnect WillExecute

TRN NGC BO

KHOA TON -TIN25 HC

I HC S PHM TP.HCM

(25) 25)

i tng Connection
BI GI ING H PHN LP TR C N RNH WINDOWS S

Thuc tnh: ConnectionString

LP TR L RNH CSDL VI AD C V DO

Thuc tnh ConnetionString dng gn tn tp tin MDB nu s dng A d Access h xc l S hoc lp ServerName, DBN N DBName, U UserName, N Password nu kt ni vi SQL Server Phng thc: Ph ng thc Open Sau khi xc lp thuc tnh ConnetionString, gi hm Open m Connnection. Connnection Thng thng trong mt ng dng Connection ch m mt ln khi load ng dng Bin Connection thng c khai bo ton cc c th s dng trong ton b ng dng Phng thc: Close Phng thc Close c gi ng Connection. Thng thng trong mt ng dng gi close i tng connection khi g g g g g g kt thc chng trnh
TRN NGC BO KHOA TON -TIN26 HC I HC S PHM TP.HCM (26) 26)

i tng Connection
BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Kt ni CSDL SQL Server


//Khai bo bin //Kh i b bi qun l connection i _ConnectionPtr m_pConnection;
HRESULT hr; hr = m_pConnection.CreateInstance( __uuidof( Connection ) ); if (SUCCEEDED(hr)) { hr= m pConnection->Open( bstr t(L"Provider=sqloledb;Data m_pConnection->Open(_bstr_t(L Provider=sqloledb;Data Source=ServerName;InitialCatalog=DatabaseName;"), _bstr_t(L"UserName"), _bstr_t(L"Password"), adModeUnknown); if (SUCCEEDED(hr)) { bRes = TRUE; } }

TRN NGC BO

KHOA TON -TIN27 HC

I HC S PHM TP.HCM

(27) 27)

Tng tc d liu: thm, xa,...


BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Ly d liu

Thm Th d liu Xa d liu


TRN NGC BO

Sa d liu
I HC S PHM TP.HCM (28) 28)

KHOA TON -TIN28 HC

Thc thi cu lnh Insert/Delete...


BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Thm d liu Cp nht d liu p Xa d liu Ly d liu

Thc thi cc cu lnh Insert, Delete, update, Select thng qua i tng

Command
KHOA TON -TIN29 HC I HC S PHM TP.HCM (29) 29)

TRN NGC BO

i tng Command
BI GI ING H PHN LP TR C N RNH WINDOWS S
Command Object

LP TR L RNH CSDL VI AD C V DO

Properties ActiveConnection CommandText CommandTimeOut CommandType Name Parameter Collection Prepared P d Properties Collection State*

Method Cancel CreateParameter Execute

Parameter Colection Parameter Object Properties Collection Properties Object

TRN NGC BO

KHOA TON -TIN30 HC

I HC S PHM TP.HCM

(30) 30)

i tng Command
BI GI ING H PHN LP TR C N RNH WINDOWS S

Thuc tnh: ActiveConnection

LP TR L RNH CSDL VI AD C V DO

Thuc tnh ActiveConnetion dng gn mt i tng Connection ang c m C ti Thuc tnh: CommandText Thuc tnh CommandText dng xc nh cu lnh SQL thao tc cn thc hin trong 4 loi thao tc : SELECT, INSERT, DELETE, DELETE UPDATE Thuc tnh: CommandType Thuc tnh CommandType dng xc nh ni dung trong CommandText thuc loi no ? CommandText l tn ca Table/Views, Tn Stored procedure hay mt cu lnh SQL ? Phng thc: Execute Phng thc Execute c gi thc thi mt cu lnh SQL c gn cho trong thuc tnh CommandText
TRN NGC BO KHOA TON -TIN31 HC I HC S PHM TP.HCM (31) 31)

i tng Command
BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

//Khai bo bin qun l Command _CommandPtr g_pCmd; C dPt C d


Kt ni CSDL thng qua Connection
C php g_pCmd.CreateInstance(__uuidof(Command)); g_pCmd->ActiveConnection=m_pConnection;

//vi m pConnection l 1 connection ang m m_pConnection

TRN NGC BO

KHOA TON -TIN32 HC

I HC S PHM TP.HCM

(32) 32)

i tng Command
BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

//Khai bo bin qun l Command _CommandPtr g_pCmd;


Thc thi cu lnh SQL: Insert/Delete/Update Th l h SQL I t/D l t /U d t
C php CString sSQL; g_pCmd->CommandText=_bstr_t(sSQL); C d >C dT t b t t( SQL) g_pCmd->CommandType=adCmdText; _variant_t vRecsAffected(0L); g_pCmd->Execute(&vRecsAffected,NULL,adOptionUnspecified);
TRN NGC BO KHOA TON -TIN33 HC I HC S PHM TP.HCM (33) 33)

i tng Command
BI GI ING H PHN LP TR C N RNH WINDOWS S

Thc thi cu lnh SQL: Insert/Delete/Update LP TR L RNH CSDL VI AD C V DO


V d: thc thi mt cu lnh SQL Xa d liu t Table HocSinh
CString sSQL=Delete From HocSinh; g_pCmd->CommandText=_bstr_t(sSQL); C d >C dT t b t t( SQL) g_pCmd->CommandType=adCmdText; _ _variant_t vRecsAffected(0L); _ try { g_pCmd->Execute(&vRecsAffected,NULL,adOptionUnspecified); C d >E t (& R Aff t d NULL dO ti U ifi d) } catch( _com_error &e ) { AfxMessageBox("loi"); } TRN NGC BO KHOA TON -TIN34 HC I HC S PHM TP.HCM (34) 34)

i tng Command
BI GI ING H PHN LP TR C N RNH WINDOWS S

Thc thi cu lnh SQL: Insert/Delete/Update LP TR L RNH CSDL VI AD C V DO


V d: thc thi mt cu lnh SQL Insert d liu vo Table HocSinh
CString sSQL=""; sSQL = "Insert into HocSinh(MaHS,TenHS) Values(5"; sSQL = sSQL + ",\'TNB\')"; g_pCmd->CommandText=_bstr_t(sSQL); g_pCmd->CommandType=adCmdText; _variant_t vRecsAffected(0L); try { g_pCmd->Execute(&vRecsAffected,NULL,adOptionUnspecified); } catch( _com_error &e ) { //Xu ly loi }

TRN NGC BO

KHOA TON -TIN35 HC

I HC S PHM TP.HCM

(35) 35)

i tng Command
BI GI ING H PHN LP TR C N RNH WINDOWS S

Thc thi cu lnh SELECT


LP TR L RNH CSDL VI AD C V DO
Kt qu cu truy vn SELECT l mt danh sch, v d nh danh y sch sinh vin, danh sch hc sinh, danh sch nhn vin, Cn c i tng lu tr kt qu thc thi lnh SELECT l i tng Recordset
C php
CString sSQL; g_pCmd->CommandText=_bstr_t(sSQL); _ _ _ g_pCmd->CommandType=adCmdText; _variant_t vRecsAffected(0L);
g_pRS = g_pCmd->Execute(&vRecsAffected,NULL,adOptionUnspecified);

TRN NGC BO

KHOA TON -TIN36 HC

I HC S PHM TP.HCM

(36) 36)

i tng Recordset
BI GI ING H PHN LP TR C N RNH WINDOWS S
Recordset Object
Properties Method AbsolutePage AddNew AssolutePosition Cancel ActiveCommand CancelBatch ActiveConnection CancelUpdate BOF Clone Bookmark CompareBookmarks CatcheSize Delete CursorLocation Find CursorType GetRows DataMember GetString DataSource Move EditMode MoveFirst EOF MoveLast Fields Collection MoveNext Filter MovePrevious LockType L kT NextRecordset N tR d t MarshalOptions Open MaxRecords Requery PageCount Resync Pagesize Save Properties Collection Supports RecordCount Update Sort Updatebatch State Status staylnSync

LP TR L RNH CSDL VI AD C V DO

Events EndOfRecordset FetchComplete FetchProcess FieldChangeComplete MoveComplete RecordChangeComplete RecordsetChangeComlete WillChangeField WillChangeRecord WillChangeRecordset WillMove

TRN NGC BO

KHOA TON -TIN37 HC

I HC S PHM TP.HCM

(37) 37)

i tng Recordset
BI GI ING H PHN LP TR C N RNH WINDOWS S
Recordset Object

LP TR L RNH CSDL VI AD C V DO

Properties AbsolutePage AssolutePosition ActiveCommand ActiveConnection BOF ..

Method AddNew Cancel CancelBatch CancelUpdate Clone

Events EndOfRecordset FetchComplete FetchProcess FieldChangeComplete MoveComplete

Fields Collection Fields object Properties Colection Property Object

TRN NGC BO

KHOA TON -TIN38 HC

I HC S PHM TP.HCM

(38) 38)

i tng Recordset
BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

//Khai bo bin qun l RecordSet _RecordsetPtr g pRS; RecordsetPtr g_pRS;


Thc thi cu lnh SELECT
C php
g_pRS.CreateInstance(__uuidof(Recordset)); g_pRS->CursorType = adOpenStatic; // Use client cursor to enable AbsolutePosition property. g_p g pRS->CursorLocation = adUseClient; CString sSQL; g_pCmd->CommandText=_bstr_t(sSQL); g_pCmd->CommandType=adCmdText; _variant_t vRecsAffected(0L); g_p g_pRS = g_pCmd->Execute(&vRecsAffected,NULL,adOptionUnspecified); g_p p p

TRN NGC BO

KHOA TON -TIN39 HC

I HC S PHM TP.HCM

(39) 39)

i tng Recordset
BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

//Khai bo bin qun l RecordSet _RecordsetPtr g pRS; RecordsetPtr g_pRS;


V d: thc thi mt cu lnh SQL Select d liu t Table HocSinh
g_pRS.CreateInstance(__uuidof(Recordset)); g_pRS->CursorType = adOpenStatic; // Use client cursor to enable AbsolutePosition property. g_pRS->CursorLocation = adUseClient; CString sSQL=Select * from HocSinh; g_pCmd->CommandText=_bstr_t(sSQL); g_pCmd->CommandType=adCmdText; _variant_t vRecsAffected(0L); g_pRS = g_pCmd->Execute(&vRecsAffected,NULL,adOptionUnspecified); TRN NGC BO KHOA TON -TIN40 HC I HC S PHM TP.HCM (40) 40)

i tng Recordset
BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Duyt ton b cc mu tin trong RecordSet


C php
g_pRS->MoveFirst(); while (! g_pRS->EndOfFile) { _ _variant_t vField1; _ _variant_t vField2; vField1 = g_pRS->GetCollect(LFieldName1"); vField2 = g pRS->GetCollect(LFieldName2"); g_p ///////////////////////////////////////////////////////// //////// g_pRS->MoveNext(); }

TRN NGC BO

KHOA TON -TIN41 HC

I HC S PHM TP.HCM

(41) 41)

i tng Recordset
BI GI ING H PHN LP TR C N RNH WINDOWS S

Duyt t D t ton b cc mu ti trong RecordSet tin t R dS t


LP TR L RNH CSDL VI AD C V DO
V d: thc thi mt cu lnh SQL Select d liu t Table HocSinh
CString sSQL=""; sSQL = "Select * from HocSinh"; . _variant_t vRecsAffected(0L); g_pRS=doc->myADO.g_pCmd->Execute(&vRecsAffected,NULL,adOptionUnspecified); //Duyet toan bo cac mau tin CString s; g_pRS->MoveFirst(); while (!g_pRS->EndOfFile) { _variant_t vMaHS; _variant_t vTenHS; vMaHS = doc->myADO.g_pRS->GetCollect(L"MaHS"); vTenHS = doc->myADO.g_pRS->GetCollect(L"TenHS"); s.Format("%d",vMaHS.intVal); MessageBox(s); g_pRS >MoveNext(); g pRS->MoveNext(); }

TRN NGC BO

KHOA TON -TIN42 HC

I HC S PHM TP.HCM

(42) 42)

i tng Recordset
BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Cc phng thc duyt mu tin


V u danh sch
g_pRs->MoveFirst()

V cui danh sch


g_pRs > g pRs-> MoveLast()

Di chuyn v sau mt mu tin


g_pRs-> MoveNext()

V u v trc mt mu tin
g_pRs-> MovePrevious()

TRN NGC BO

KHOA TON -TIN43 HC

I HC S PHM TP.HCM

(43) 43)

i tng Recordset
BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Cc phng thc duyt mu tin


Mhoc TenMH Nhap mon tin hoc Cau truc du lieu Toan roi rac Co so du lieu MaMH COSC1310 COSC3320 MATH2410 COSC3380 TinChi 4 4 3 3 Khoa CNTT CNTT TOAN CNTT

g_pRs->MoveFirst()

TRN NGC BO

KHOA TON -TIN44 HC

I HC S PHM TP.HCM

(44) 44)

i tng Recordset
BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Cc phng thc duyt mu tin


Mhoc TenMH Nhap mon tin hoc Cau truc du lieu Toan roi rac Co so du lieu MaMH COSC1310 COSC3320 MATH2410 COSC3380 TinChi 4 4 3 3 Khoa CNTT CNTT TOAN CNTT

g_pRs->MoveLast()

TRN NGC BO

KHOA TON -TIN45 HC

I HC S PHM TP.HCM

(45) 45)

i tng Recordset
BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Cc phng thc duyt mu tin


Mhoc TenMH Nhap mon tin hoc Cau truc du lieu Toan roi rac Co so du lieu MaMH COSC1310 COSC3320 MATH2410 COSC3380 TinChi 4 4 3 3 Khoa CNTT CNTT TOAN CNTT

g_pRs->MoveNext()

TRN NGC BO

KHOA TON -TIN46 HC

I HC S PHM TP.HCM

(46) 46)

i tng Recordset
BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Cc phng thc duyt mu tin


Mhoc TenMH Nhap mon tin hoc Cau truc du lieu Toan roi rac Co so du lieu MaMH COSC1310 COSC3320 MATH2410 COSC3380 TinChi 4 4 3 3 Khoa CNTT CNTT TOAN CNTT

g_pRs->EOF = True

g_pRs->MoveNext() g pRs >MoveNext()

TRN NGC BO

KHOA TON -TIN47 HC

I HC S PHM TP.HCM

(47) 47)

i tng Recordset
BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Cc phng thc duyt mu tin


Mhoc TenMH Nhap mon tin hoc Cau truc du lieu Toan roi rac Co so du lieu MaMH COSC1310 COSC3320 MATH2410 COSC3380 TinChi 4 4 3 3 Khoa CNTT CNTT TOAN CNTT

g_pRs->MovePrevious()

TRN NGC BO

KHOA TON -TIN48 HC

I HC S PHM TP.HCM

(48) 48)

i tng Recordset
BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Cc phng thc duyt mu tin


g_pRs->BOF = T R >BOF True
Mhoc TenMH Nhap mon tin hoc Cau truc du lieu Toan roi rac Co so du lieu MaMH COSC1310 COSC3320 MATH2410 COSC3380 TinChi 4 4 3 3 Khoa CNTT CNTT TOAN CNTT

g_pRs->MovePrevious()

TRN NGC BO

KHOA TON -TIN49 HC

I HC S PHM TP.HCM

(49) 49)

i tng Field
BI GI ING H PHN LP TR C N RNH WINDOWS S
Recordset Object

LP TR L RNH CSDL VI AD C V DO

Fields Collection Field Object

Properties ActualSize Atributes DataFormat DefinedSize DefinedSi e Name NumericScale OriginalValue Precision P i i Properties Collection Type UnderlyingValue Value Properties Collection Properties Object

Methods AppendChunk GetChunk

TRN NGC BO

KHOA TON -TIN50 HC

I HC S PHM TP.HCM

(50) 50)

i Hc S Phm Tp. H Ch Minh Khoa Ton Tin Hc

LP TRNH WINDOWS

Lp trnh c s d liu vi th vin ADO


(ADO ACTIVEX DATA OBJECT)

Tng quan v lp trnh CSDL Th vin ADO Lp trnh CSDL vi ADO

Lp trnh CSDL vi ADO


BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Phng gio v ti mt trng i hc mun tin hc ha vic qun l ng k hc chuyn ca sinh vin. Kt qu phn tch thit k c m hnh CSDL quan h nh sau: 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, DCHI, MANGANH) Tn t: Mi sinh vin c mt m s duy nht (MASV), mt h tn (HOTEN), thuc mt phi (PHAI), c mt ngy sinh (NGAYSINH), c mt a ch (DCHI), v hc mt ngnh (MANGANH) MaSV M SV
K28.103.001 K28.101.001 K28 101 001 K28.101.002 K27.101.001 K27 101 001 K26.102.001 K25.201.001 TRN NGC BO

TenSV T SV
Trn Quc Thanh Nguyn Cng Ph Phan Anh Khanh Phm Kh h Nh Ph Khnh Trn Ngc Dung Phm Khnh Nh KHOA TON -TIN52 HC

Nam N
1 1 1 2 3 4

Khoa Kh
CNTT TOAN TOAN TOAN VLY HOA (52) 52)

I HC S PHM TP.HCM

Lp trnh CSDL vi ADO


BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Thit k mn hnh qun l sinh vin cho php thc hin cc thao tc lin quan n sinh vin nh: Xem danh sch sinh vin Thm mi sinh vin Xa sinh vin khi danh sch Thay i thng tin sinh vin

TRN NGC BO

KHOA TON -TIN53 HC

I HC S PHM TP.HCM

(53) 53)

Xem danh sch sinh vin


BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Thit k mn hnh qun l sinh vin cho php thc hin cc thao tc lin quan n sinh vin nh: Ly danh sch sinh vin lu tr trong table SinhVien trong CSDL hin th ln Grid trong mn hnh Thng tin sinh vin

Thc hin truy vn d liu vi cu lnh SELECT

TRN NGC BO

KHOA TON -TIN54 HC

I HC S PHM TP.HCM

(54) 54)

Xem danh sch sinh vin


BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Thit k mn hnh qun l sinh vin cho php thc hin cc thao tc lin quan n sinh vin nh: Ly danh sch sinh vin lu tr trong table SinhVien trong CSDL hin th ln Grid trong mn hnh Thng tin sinh vin

SELECT MASV, TENSV, NAM, KHOA FROM SINHVIEN


TRN NGC BO KHOA TON -TIN55 HC

Thc hin truy vn d liu vi cu lnh SELECT

I HC S PHM TP.HCM

(55) 55)

Xem danh sch sinh vin


BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Ly danh sch sinh vin lu tr trong table SinhVien trong CSDL hin th ln Grid trong mn hnh Thng tin sinh vin Cn phi s dng cc i tng sau trong th vin ADO Connection C ti Thit lp kt ni vi CSDL c cha Table SinhVien Command Thc thi cu lnh SQL SELECT MASV, TENSV, NAM, KHOA FROM SINHVIEN Recordset q Q Cha kt qu thc thi cu lnh SQL SELECT trn
TRN NGC BO KHOA TON -TIN56 HC I HC S PHM TP.HCM (56) 56)

Thm mi sinh vin


BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Thit k mn hnh qun l sinh vin cho php thc hin cc thao tc lin quan n sinh vin nh: Ly thng tin sinh vin trong mn hnh Thng tin sinh vin lu vo Table HocSinh

Thc hin cu lnh INSERT

TRN NGC BO

KHOA TON -TIN57 HC

I HC S PHM TP.HCM

(57) 57)

Thm mi sinh vin


BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Ly thng tin sinh vin trong mn hnh Thng tin sinh vin lu vo table SinhVien Cn phi s dng cc i tng sau trong th vin ADO Connection C ti Thit lp kt ni vi CSDL c cha Table SinhVien Command Thc thi cu lnh SQL INSERT INTO SINHVIEN (MASV, TENSV, NAM, KHOA) VALUES (????,????,???,???)

Cc g tr MASV, TENSV,.. c ly t cc control gi , , y (Edittext) trong mn hnh thng tin sinh vin
TRN NGC BO KHOA TON -TIN58 HC I HC S PHM TP.HCM (58) 58)

Xa sinh vin
BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Thit k mn hnh qun l sinh vin cho php thc hin cc thao tc lin quan n sinh vin nh: Xa sinh vin ang c chn trong danh sch sinh vin

Thc hin cu lnh DELETE

TRN NGC BO

KHOA TON -TIN59 HC

I HC S PHM TP.HCM

(59) 59)

Xa sinh vin
BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Xa sinh vin ang c chn trong danh sch sinh vin ra khi table SinhVien Cn phi s dng cc i tng sau trong th vin ADO Connection C ti Thit lp kt ni vi CSDL c cha Table SinhVien Command Thc thi cu lnh SQL DELETE FROM SINHVIEN WHERE MASV = ???

Gi tr MASV c ly t cc control (MaSV) trong mn y ( ) g hnh thng tin sinh vin


TRN NGC BO KHOA TON -TIN60 HC I HC S PHM TP.HCM (60) 60)

Cp nht thng tin sinh vin


BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

Thit k mn hnh qun l sinh vin cho php thc hin cc thao tc lin quan n sinh vin nh: Thay i thng tin sinh vin ang c chn bng thng tin c sa i trong mn hnh thng tin sinh vin

Thc hin cu lnh UPDATE

TRN NGC BO

KHOA TON -TIN61 HC

I HC S PHM TP.HCM

(61) 61)

Cp nht thng tin sinh vin


BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO

cp nht thng tin sinh vin trn mn hnh vo table SinhVien trong CSDL Cn phi s dng cc i tng sau trong th vin ADO Connection C ti Thit lp kt ni vi CSDL c cha Table SinhVien Command Thc thi cu lnh SQL UPDATE SINHVIEN SET HOTEN = ???, NAM = ???, KHOA = ??? WHERE MASV = ??? ??? Cc g tr MASV, TENSV,.. c ly t cc control gi , , y (Edittext) trong mn hnh thng tin sinh vin
TRN NGC BO KHOA TON -TIN62 HC I HC S PHM TP.HCM (62) 62)

BI GI ING H PHN LP TR C N RNH WINDOWS S

LP TR L RNH CSDL VI AD C V DO
TRN NGC BO KHOA TON -TIN63 HC I HC S PHM TP.HCM (63) 63)

You might also like