----------------------------------------------------
Microsoft(R) ActiveX(R) Data Objects 2.1 ļ
----------------------------------------------------

(c) 1998 Microsoft Corporation һȨ

ĵ Microsoft ADO ĵ֣ṩһЩµ
Ϣ

-----
Ŀ¼
-----

1. Ʒ˵

2. ¹
2.1 Һ
2.2 иºͬ
2.3 Microsoft OLE DB Persistence Provider
2.4 Microsoft Data Shaping Service for OLE DB
2.5 Microsoft OLE DB Remoting Provider

3. ˵
3.1 ȫǿ
3.2 Ϊ
3.3 Զ尲ȫ

4. ֪ơԼĵ˵

------------
1. Ʒ˵
------------

ActiveX Data Objects (ADO) ڷݵĻԶ
ӿڡADO ʹ OLE DB ӿڷʷΧԴ
ͨ ODBC ṩݡ

 ADO ȫԿЩӿڵľ飬ԣRDO  
DAO ûܺܿӦ ADO ̡

Microsoft Remote Data Service (RDS)  ADO һ
RDS Ϊפ Microsoft Internet Explorer ϵӦó
ЧӺݷܡĻǹ 
HTTPHTTPS Secure Sockets ϵHTTP DCOM Ӧ
Э֮ϵĿͻ/ֲʽRDS ʹʶ 
ActiveX ؼҪֲʽܼ Intranet 
 Internet Ӧó Web Աṩ 
Microsoft Visual Basic(R) ̵ݷʡ

----------
2. ¹
----------

ADO 2.1 Ϊ˼¹ܡ

2.1 Һ
ĲҷԿڼ¼ʵֿٲ
жλ

2.2 иºͬ
µġй̶ģʽṩ˶ JOIN ļ¼
ûԶиºͬĹܡ߸¶̬
ɿзΪ

2.3 Microsoft OLE DB Persistence Provider
Microsoft OLE DB Persistence Provider ͬ Recordset 
 Save  Open Խ¼ʹ洢ļС
ʹøð汾ɰ Extensible Markup Language (XML) ʽ
¼XML Ƕھ Internet ݴû
ָǵı׼ʽ

2.4 Microsoft Data Shaping Service for OLE DB
Microsoft Data Shaping Service for OLE DB ֧ݹΣ
ֿԣ

2.4.1 ¹ǰѳεļ¼Ϊָ֧ùܣ¼
ӵдڼ Name ԡ

2.4.2 ڳμ¼κμϵִкϼƼ㣬
ڸֱӡùʹȫ޶Ӽγ輶
е·

2.4.3  COMPUTE  PARAMETER ӾͲ
֮ӵĲ COMPUTE Ӿ䡣

2.5 Microsoft OLE DB Remoting Provider
Microsoft OLE DB Remoting Provider Ϊ׼ṩߣ
ʵǿܡǿûƺ ADO 2.0 
µĶ̬ԡ


-----------
3. ˵
-----------

3.1 ȫǿ

ð汾 ADO  RDS İȫǿԱ㵱 
Internet Explorer ڡȫģʽʱʹĳЩܵơ

3.1.1. 
 Internet Explorer 4.0 Ϊͬġòͬ
ȫãԱЩԶ ADO/RDS Ϊ 
Internet Explorer 4.0 жĸ
*  Internet 
*  ҵ
*  վ
*  վ

3.1.2. ȫ
Զÿָʹõİȫȼÿʹµ
ȫȼ
*  
*  
*  
*  Զ

 ActiveX ؼһΪ ADO/RDS ȫ 
Internet Explorer 4.0 й뽫ȫȼΪС
򡰸ߡԶڽ ADO/RDS Ϊڰȫǰȫ
ģʽ¹

3.2 Ϊ

Ĭ£ԡҵ򡱡վ
͡Internet 򡱵ҳʱ Internet Explorer 4.0 ж 
ADO/RDS κηǰȫʾûʾĬ£
ԡվ򡱵ҳö ADO/RDS κ
ǰȫ˵Щģʽʱ ADO/RDS Ϊ

3.2.1 ȫ
жΪǡȫġζڰȫ磬Ĭ
Ϊ Internet ExplorerԶڷǰȫģʽ
У£ǰȫμ 3.2.3ڷǰȫģʽ
磬Visual Basicġ
a. RDS.DataControl 
b. RDS.DataSpace 
c. ADO Recordset 

3.2.2 ǰȫ
жΪǡǰȫġڰȫ²ʱ޷
ֱӻӴЩ󣨲û
a. RDSServer.DataFactory 
b. ADO Connection 
c. ADO Command 

3.2.3 ȫϵķǰȫ
ΪǶԡȫķǰȫ -- RDS.DataControl
RDS.DataSpace  ADO RecordsetЩڰȫ
ģڷǰȫȴġ

a. RDS.DataControl
i)  RDS.DataControl  DCOM ζ
ڱؼʹ DCOM Эӵķϴݿ
ӡ
ii) ͨ HTTP ִеѾҳ
ζ RDS.DataControl е Server Ա
ҳ (http:// Server) ͬ

b. RDS.DataSpace
i) RDS.DataSpace  DCOM ζŲ
ؼ DCOM Эϣʹ RDS.DataSpace ҵ
ii) ͨ HTTP ִе㷽Ѿҳ
ζ DataSpace ϵ CreateObject У
ڶָҳͬķ

c. ADO ¼
i) ṩΪ MS Remote κεطӡַ
ԡProvider=MS Remoteͷַе 
"Remote Server" Ҳҳķͬص
 DCOM ӡ
ii) س־Բ罫¼浽ļϵͳʹӱ
ļд򿪼¼

3.3 Զ尲ȫ

ADO/RDS ΪѡûбΪȫ ActiveX ؼгʼ
ִнűƣָͨİȫİȫá
ҵĬϡûбΪȫ ActiveX ؼгʼ
ִнűѡ£
ȫ = 		ֵ = á
ȫ = 		ֵ = á
ȫ = 		ֵ = ʾ

йȫĬã Internet Explorer ĵ

ͨİȫ𣬿Ըδӵ ADO Recordset 
ΪҪòȫĲϣÿЩʱ
ʾʽؽѡֵΪáͬʱע⣬
 RDS DataControl  ADO Recordset вȫĲ
罫¼浽ļϵͳļУ뽫ѡ
ֵΪáЩ Recordset  RDS.Datacontrol
áʾڡá

ֱͨӲѡԶĬáѡ
ȫ÷ǰȫָͼиòʱʾ棬
򲻽оøòΪͬİȫòͬԶ
áָȫԶ尲ȫãִ² 

棺עáûбΪȫ ActiveX ؼгʼ
ִнűĵ 5 󣬽ҳʹκΰȫ
ǰȫ ActiveX ؼɼؽû¶Ŀؼ
Ľű룩ֻڡҵ򡰿վ㡱ȫ
Ҫ Internet 򣩽Ĳ

1.  Internet Explorer 4.0 ġ鿴˵ѡInternet 
ѡ󣬵Internet ѡԻѡ񡰰ȫѡ
2. ӡбѡҪԶõ
3. ΪѡѡԶ塱ɴ˼Իеġáť
4. áȫáԻ
5. Ҫö ADO/RDS ķǰȫ 3.2.3 
ʾ棬ڡȫáԻġûбΪȫ 
ActiveX ؼгʼͽűСѡѡáȻ
ȷ
6. ϣһ ADO/RDS зǰȫ 3.2.3 
ʱʾ棬ڡȫáԻġûбΪȫ 
ActiveX ؼгʼͽűСѡѡʾȻ
ȷ
7. ϣȫö ADO/RDS еķǰȫ
 3.2.3 ڡȫáԻġûбΪ
ȫ ActiveX ؼгʼͽűСѡѡ񡰽á
Ȼ󵥻ȷ
8. бҪظϲΪȫԶ尲ȫá
9. ȷ

ڣADO/RDS ָԶģʽ»ЩýӰ
ָȫе ADO/RDS  3.2.3 Ϊ 
-- 򿪱ӣͨ DCOM ӵҳ֮
ķ¼浽ؼļкʹӱؼ
ļд򿪼¼

ԶѡΪʾڶ ADO/RDS зǰȫ
ʱʾ¾棺

ҳڷһеԴǷòû
лشǡ򡰷񡱵ѡشǡɸò
ʧܡ

-------------------------------------------
4. ֪ơԼĵ˵
-------------------------------------------

4.1 ȱٲϵͳ֧֣ǰв֧ RDS еĿͻģ¡

4.2  Internet Information Server 4.0 д
ʱҪⲽԷԱ㴦 RDS

A) ڰװʱѡСִзʡ
B)  msadcs.dll  vroot\msadc˴ vroot 
ҳĿ¼

4.3  IIS ʹ RDS ʱͨϵ
עÿ߳Ŀÿ߳Ŀ
ͨѶšͨѶţѯӦ÷޴Ӱܡ
ûӦԻѽֵָΪ

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SVC
\Parameters\ADCThreads

˴ ADCThreads ûӵ REG_DWORDЧֵķΧ 1 
 50ĬֵΪ 6עֵָ 50ʹ
ֵ (50)ûشעֵĬ£עС

4.4 ĬϵأʹáȫġRDS Server DataFactory װ ADO
RDS Server İȫģʽζţ

	1. DataFactory Ҫʹô
	עġ

	2. ǵĬϴ msdfmap.handler עᣬ
	ȫбУΪĬϴ

	3. Msdfmap.ini ļװ Windows Ŀ¼ʹ
	ģʽ RDS ֮ǰҪøļ

ѡأƵ DataFactory װֱʹ 
DataFactory ҪԶĴͨ޸ַû
ȻʹԶ崦򣬵ûбҪġ

Ѿṩעļ handsafe.reg ðȫõĴ
עҪڰȫģʽУ handsafe.reg 

Ѿṩעļ handunsf.reg õĴ
עҪģʽУ handunsf.reg

йʹ RDS Զ崦ԵϸϢļ
Using the Customization Handler Feature in RDS 2.0λ
http://www.microsoft.com/data/techmat.htm

4.5 Find ʹָķ򲢴ӵǰпʼ Recordset 
ָ׼ĵļ¼ڵ Find ֮ǰδõǰλãִ

4.6 Ϊͨ Visual Basic ʹ ADO FetchProgress  FetchComplete 
¼Ҫ Visual Basic 6.0 汾

4.7  Data Shaping CALC ʽʹõ²ǰȫģ
Abs, Asc, Atn, CBool, CByte, CCur, CDate, CDbl, Chr, ChrB, ChrW, 
Chr$, ChrB$, CInt, CLng, Cos, CSng, CStr, Cvar, CVDate, CVErr, Date, 
Date$, DateAdd, DateDiff, DatePart, DateSerial, DateValue, Day, DDB, 
Error, Error$, Exp, Fix, Format, Format$, FV, Hex, Hex$, Hour, IIF, 
InStr, Int, IPmt, IRR, IsDate, IsEmpty, IsError, IsNull, IsNumeric, 
IsObject, LCase, LCase$, Left, LeftB, Left$, LeftB$, Len, Log, LTrim, 
LTrim$, Mid, Mid$, Minute, MIRR, Month, Now, NPer, NPV, Oct, Oct$, 
Pmt, PPmt, PV, QBColor, Rate, RGB, Right, RightB, Right$, RightB$, 
Rnd, RTrim, RTrim$, Second, Sgn, Sin, SLN, Space, Space$, Sqr, Str, 
Str$, StrComp, StrConv, String, String$, SYD, Tan, Time,Time$, 
Timer, TimeSerial, TimeValue, Trim, Trim$, TypeName, UCase, UCase$, 
Val, VarType , Weekday, Year

4.8 ADO 2.1 ֧ XML ʽʹó־õķּ Recordset 

4.9  ͨݱ浽 XML ༭ XML ļ޷ʵֶֻ Recordset 
ݵĸ¡ XML Ѿģ XML ļ´ 
Recordset ʱִ

4.10 ʹ adUseClient Զ̷ SQL Server 6.5 Service Pack 4 ʱ
ԿɸµĽڲѯʹ DISTINCT ؼֽԡ 
SQL Server ⣬ԺķмԽ

4.11 ڡActiveX Data Objects ԱοġType ԡ
г DataTypeEnum ֵöֵбУʵʲ
޷ʹã

adArrayadByRefadVector

ֵбУʵʴڲʹã

adChapter     4 ֽڵӼֵڱʶме (DBTYPE_HCHAPTER)

adDBFileTime  ļʱֵ (DBTYPE_DBFILETIME)

adFileTime    64 ֽڵֵԴ 1601  1  1  100 
ʮڷ֮һΪλʱ (DBTYPE_FILETIME)

adPropVariant Զ PROPVARIANT (DBTYPE_PROP_VARIANT)

adVarNumeric  ֵ Parameter 󣩡

4.12 Connection  Command  Execute  Options Чֵ
б ExecuteOptionEnum ֵȷгʵӦ
гһΣ

adCmdTable    ָʾ ADO Ӧ CommandText  SQL ѯԱ
 CommandText ıеС

 CommandTypeEnum ֵбУʵʴڲʹã

adCmdFile     ָʾṩӦļ CommandText

 ExecuteOptionEnum ֵбУʵʴڲʹã

adAsyncFetchNonBlocking   ָʾȡ߳
δȡǰнԶƶļĩβ

adExecuteNoRecords        ָʾ CommandText ޷е
洢̣磬ݵҪУЩн
Ҳءͨ adCmdText  adCmdStoredProc ϲʹá

4.13 Connection  OpenSchema  QueryType öֵб
ֵбУʵʴڲʹã

ö			

adSchemaDBInfoKeywords	

adSchemaDBInfoLiterals	

adSchemaCubes		CATALOG_NAME
			SCHEMA_NAME
			CUBE_NAME

adSchemaDimensions	CATALOG_NAME
			SCHEMA_NAME
			CUBE_NAME
			DIMENSION_NAME
			DIMENSION_UNIQUE_NAME

adSchemaHierarchies	CATALOG_NAME
			SCHEMA_NAME
			CUBE_NAME
			DIMENSION_UNIQUE_NAME
			HIERARCHY_NAME
			HIERARCHY_UNIQUE_NAME

adSchemaLevels		CATALOG_NAME
			SCHEMA_NAME
			CUBE_NAME
			DIMENSION_UNIQUE_NAME
			HIERARCHY_UNIQUE_NAME
			LEVEL_NAME
			LEVEL_UNIQUE_NAME

adSchemaMeasures	CATALOG_NAME
			SCHEMA_NAME
			CUBE_NAME
			MEASURE_NAME
			MEASURE_UNIQUE_NAME

adSchemaProperties	CATALOG_NAME
			SCHEMA_NAME
			CUBE_NAME
			DIMENSION_UNIQUE_NAME
			HIERARCHY_UNIQUE_NAME
			LEVEL_UNIQUE_NAME
			MEMBER_UNIQUE_NAME
			PROPERTY_TYPE
			PROPERTY_NAME

adSchemaMembers		CATALOG_NAME
			SCHEMA_NAME
			CUBE_NAME
			DIMENSION_UNIQUE_NAME
			HIERARCHY_UNIQUE_NAME
			LEVEL_UNIQUE_NAME
			LEVEL_NUMBER
			MEMBER_NAME
			MEMBER_UNIQUE_NAME
			MEMBER_CAPTION
			MEMBER_TYPE
			棩

ע⣬߸öֵadSchemaCubes  adSchemaMembersӦ
ڶάṩߡ adSchemaMembers ƶ
ϸϢġOLE DB for OLAP Աο

4.14 ActiveX Data Objects ԱοġCancelBatch 
е AffectEnum  ֵֵбУ
ʵʴڲʹã

adAffectAllChapters     ȡӼĹġ


4.15  Mode  adModeShareDenyNone 
ConnectModeEnum ֵȷӦǣ

adModeShareDenyNone	ʹκȨ޴ӡ
κ˾ܾȡдʡ

4.16 ǰûڼ¼Ի᷵
һϢ
MDAC 2.1 Service Pack 1 е ADO 2.1 ڴ·һ
ַɳɹ



