直接访问模式(Direct mode)是ODAC最大的特色之一,即不需要安装Oracle客户端,ODAC越过了OCI(Oracle Call Interface ),使用TCP/IP协议就可以直接与Oracle服务器通信,使得ODAC程序的部署非常方便,性能也非常高。
要设置直接访问模式,只需要将连接组件的选择项Direct设为True
Session.Options.Direct := True;
其他的参数设置同正常模式。使用直接访问模式的优势是不需要安装Oracle客户端,部署更方便,资源消耗也有所降低,但是也有所限制,包括:
1、只能使用TCP/IP协议。
2、个别数据类型不支持,包括OBJECT、ARRAY、REF、XML、BINARY_DOUBLE、BINARY_FLOAT等。
3、SQL中使用RETURNING时无法返回RowsAffected属性结果。
4、不支持TOraLoader直接导入数据。
5、不支持客户端的NLS转换。
6、不支持透明应用备援模式(Transparent application failover ,TAF)。
7、不支持SQL语句缓冲模式(statement caching)。
8、不支持操作系统身份认证功能(OS authentication feature)。
9、不支持变动消息通知组件(TOraChangeNotification)。
10、多线程下建议每个线程使用独立的TOraSession组件,不保证多线程下共用一个TOraSession的稳定性。