Delphi下使用Oracle Access控件组下TOraSession控件链接 数据库,使用 orsn1.Options.Direct:=true; orsn1.Server:=IP:Port:SID; orsn1.Username:=UserName; orsn1.Password:=PassWord; orsn1.Connect; 即可链接成功,这是使用SID方式链接的。 但如果登陆数据库使用服务名方式,程序死活链接不上,原因, 说是因为Delphi ODAC与Oracle RAC Direct mode does not support RAC.YOU can connect only to one fixed server in RAC. ODAC 控件中的Direct模式不支持Oracle RAC,只能够链接一个确定的RAC实例。 如果要使用ODAC控件连接Oracle RAC,则需要Oracel安装客户端,并且不使用Direct模式, 链接方式与ADO连接Oracle一致。
根据说明,安装Oracle客户端,安装好之后,查找tnsnames.ora文件 在文件增加
DMSII= (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.73)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.74)(PORT = 1521)) (LOAD_BALANCE = ON) (FAILOVER = ON) (CONNECT_DATA = (SERVICE_NAME = DMSII) (FAILOVER_MODE = (TYPE = select) (METHOD = BASIC) (RETRIES = 30) (DELAY = 5) ) ) ) 注意,DMSII前不能有空格 程序代码修改 orsn1.Username:=UserName; orsn1.Password:=PassWord; orsn1.Server:=服务名; orsn1.Connect; 链接即可。
|
请发表评论