php连接oracle数据库oci_connect函数问题
我看这个链接数据库函数oci_connect('hzds_user','oracle123','hzds','utf8');这里为什么没有指定所要连接的数据库对象呢,就只...
我看这个链接数据库函数oci_connect('hzds_user','oracle123','hzds','utf8');这里为什么没有指定所要连接的数据库对象呢,就只要用户名,密码,服务名,编码,这样就够了吗,如果我有两个数据库,他们其中有一个表的名称是一样的,那不是乱了,这个是什么原因
展开
1个回答
展开全部
resource oci_connect ( string $username , string $password [, string $db [, string$charset [, int $session_mode ]]] )
其中第三个参数 $db 在Oracle中叫:本地Net服务名,是存储在 tnsnames.ora中的,典型的如下:
SALES =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.188.219)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = sales)
)
)
其中已经包含 服务器名(地址),端口,数据库的SID(或者Service_name)了。
其中第三个参数 $db 在Oracle中叫:本地Net服务名,是存储在 tnsnames.ora中的,典型的如下:
SALES =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.188.219)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = sales)
)
)
其中已经包含 服务器名(地址),端口,数据库的SID(或者Service_name)了。
更多追问追答
追问
是不是我这里的第三个参数只要跟tnsnames.ora中的(SERVICE_NAME = sales)这里的SERVICE_NAME这个值对上就好了,那我如果直接修改掉这里的值,然后连接的时候直接写修改后的这个值就可以了,需不需要配置其他的地方了,比如所监控服务那里
追答
错,要和 SALES = 中的sales 一样
其他内容, host后面的 ip(或者机器名) 、端口(1521 一般不会变)、service_name 后的内容,都要是你自己 的 数据库的实际情况。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |