- 浏览: 415531 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
yzpniceboy:
楼主,我现在使用的mule,已经集成了spring和hiber ...
Mule+Spring+jbpm -
sztiger168:
建议大家深入学习:什么是集成产品开发(IPD),如何在公司内推 ...
集成产品开发(IPD)理论学习心得(1) -
zouruixin:
synchronized
并发,并发 -
anttu:
并发,并发 -
courage207:
最近也在研究,我还会研究一些大数据量处理,会陆续更新
并发,并发
2. Client Access
2.1 Client Connections
Users can access data in the Teradata Database through an application on both channel-attached and network-attached clients. Additionally, the node itself can act as a client. Teradata client software is installed on each client (channel-attached, network-attached, or node) and communicates with RDBMS software on the node. You may occasionally hear either type of client referred to by the legacy term of "host," though this term is not typically used in documentation or product literature.
<v:shapetype o:spt="75" removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}" coordsize="21600,21600" stroked="f" id="_x0000_t75" filled="f" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe"><v:stroke removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}" joinstyle="miter"></v:stroke><v:formulas removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}"><v:f eqn="if lineDrawn pixelLineWidth 0" removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}"></v:f><v:f eqn="sum @0 1 0" removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}"></v:f><v:f eqn="sum 0 0 @1" removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}"></v:f><v:f eqn="prod @2 1 2" removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}"></v:f><v:f eqn="prod @3 21600 pixelWidth" removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}"></v:f><v:f eqn="prod @3 21600 pixelHeight" removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}"></v:f><v:f eqn="sum @0 0 1" removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}"></v:f><v:f eqn="prod @6 1 2" removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}"></v:f><v:f eqn="prod @7 21600 pixelWidth" removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}"></v:f><v:f eqn="sum @8 21600 0" removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}"></v:f><v:f eqn="prod @7 21600 pixelHeight" removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}"></v:f><v:f eqn="sum @10 21600 0" removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}"></v:f></v:formulas><v:path gradientshapeok="t" removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}" o:extrusionok="f" o:connecttype="rect"></v:path><o:lock removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}" v:ext="edit" aspectratio="t"></o:lock></v:shapetype><v:shape removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}" type="#_x0000_t75" id="_x0000_i1025" alt="" style="WIDTH: 355.5pt; HEIGHT: 209.25pt"><v:imagedata o:href="teradata考试资料/Basic/Basic/Untitled/cli-hw.gif" removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}" src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image001.gif"></v:imagedata></v:shape>
2.2 Channel-Attached Client
Channel-attached clients are IBM-compatible mainframe systems supported by the Teradata Database. The following software components installed on the mainframe are responsible for communications between client applications and the Channel Driver on a Teradata node: <o:p removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}"></o:p>
- Teradata Director Program (TDP) software to manage session traffic, installed on the channel-attached client. <o:p removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}"></o:p>
- Call-Level Interface (CLI), a library of routines that are the lowest-level interface to Teradata. <o:p removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}"></o:p>
Communication with the Teradata System<o:p removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}"></o:p>
Communication from client applications on the mainframe goes through the mainframe channel, to the Host Channel Adapter on the node, to the Channel Driver software.<o:p removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}"></o:p>
2.3 Network Attached Client
The Teradata Database supports network-attached clients connected to the node over a LAN. The following software components installed on the network-attached client are responsible for communication between client applications and the Teradata Gateway on a Teradata node: <o:p removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}"></o:p>
- ODBC <o:p removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}"></o:p>
- CLIv2 <o:p removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}"></o:p>
Communication with the Teradata System <o:p removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}"></o:p>
Communication from applications on the network-attached client goes over the LAN, to the Ethernet card on the node, to the Teradata Gateway software.<o:p removechild="function MyRC(arg1){var self = this;if (self.removeAttribute)self.removeAttribute(&quot;removeChild");var result = self[&quot;removeChild"](arg1);self[&quot;removeChild"] = arguments.callee; /*Finally restore the Override Function*/if(arg1.clearAttributes)arg1.clearAttributes();if(arg1.onclick)arg1.onclick=null;if(arg1.onmousemove)arg1.onmousemove=null;if(arg1.onmouseover)arg1.onmouseover=null;if(arg1.ondblclick)arg1.ondblclick=null;if(arg1.onmouseenter)arg1.onmouseenter=null;if(arg1.onmouseleave)arg1.onmouseleave=null;return result;}"></o:p>
2.4 Node
The node is considered a network-attached client. If you install application software on a node, it will be treated like an application on a network-attached client. In other words, communications from applications on the node go through the Te
相关推荐
- **CLIENT/SERVER结构下的Teradata数据库**:详细介绍了在客户端/服务器架构下Teradata数据库的工作原理和技术特点。 - **TERADATA ODBC驱动程序设置**:提供了关于如何配置Teradata ODBC驱动程序的具体指导。 - **...
SAS/ACCESS Interface to Teradata 31DEC2019 SAS/ACCESS Interface to Vertica 31DEC2019 SAS/ACCESS Interface to the PI System 31DEC2019 SAS/AF 31DEC2019 SAS/ASSIST 31DEC2019 SAS/CONNECT 31DEC2019 SAS/EIS...
SAS/ACCESS Interface to Teradata 28FEB2014 SAS/AF 28FEB2014 SAS/ASSIST 28FEB2014 SAS/CONNECT 28FEB2014 SAS/EIS 28FEB2014 SAS/ETS 28FEB2014 SAS/FSP 28FEB2014 SAS/GIS 28FEB2014 SAS/GRAPH 28FEB2014 SAS/...
5. **灵活的架构**:CDC架构由Source(源)、Target(目标)、Access Server和Client组成,通过TCP/IP通信,可跨多种数据库系统(如DB2、Oracle、SQL Server、Teradata等)和操作系统(如IBM System i、z、p、...
3. **ODBC Driver for X**:这里X代表各种数据库,如AS/400、Access、dBASE、Excel、MySQL、Oracle、Paradox、SQL Server、Sybase、Sybase SQL Anywhere、Text、Teradata和Visual FoxPro,这些都是ODBC驱动程序支持...
- **Teradata**:一个主要面向数据分析的数据库系统,常用于数据仓库。 - **Sybase**:支持多种平台,如OS/2、Windows NT等,Sybase SQL Anywhere和PowerBuilder是其产品线的一部分。 - **Informix**:提供在线事务...
- **数据库支持**:四款工具均支持8种主流关系型数据库,如Oracle、Teradata、DB2、Sybase、Informix、SQL Server和Access,以及ODBC/JDBC等开放式接口。 - **Web服务器**:BO支持6种Web服务器,MSTR和Hyperion...
报告表明,这四种工具对**关系型数据库**的支持相当广泛,包括Oracle、Teradata、DB2、Sybase、Informix、SQL Server、Access以及其他数据库类型,总计8种或更多,展示了它们对主流和非主流数据库系统的全面覆盖能力...
- **检查工具—accessdriver**:介绍了如何确认数据访问驱动程序的配置是否正确。 - **检查工具—connectivity**:提供了检查网络连接性的方法。 - **检查工具—ping**:演示了如何使用`ping`命令测试到数据库...