http://search.csdn.net/Expert/topic/1982/1982156.xml?temp=.5562097大家先看看上面的链接。报错信息如下:
ORA-00162: external dbid length 18 is greater than maximum (16) 检查是连接字符串中的
data source=abcde01_192.168.1.177
后面那个超过了16位所以就报错。
ORACLE和SQL SERVER很不一样的地方就是,SQL SERVER中data source=服务名就可以了
ORACLE中data source=服务名_IP还要加上IP才能正常访问。经过多次实验只要把
客户端安装文件下 network\admin\tnsnames.ora
文件的内容
加一个abcde01=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = ****)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = abcde01)
)
)连接字符串里面就可以不用写
data source=服务名_IP
直接写
data source=服务名(如abcde01)
我想知道:
1.有没有什么方法可以突破那个连接字符串data source=后面最多只能跟16个字符的限制。
2.如果去修改每个客户端的tnsnames.ora文件才能正常访问的话,BS系统还好,只要改一个就行,
如果是CS系统有几百个客户端岂不是每个客户端都要去修改?
ORA-00162: external dbid length 18 is greater than maximum (16) 检查是连接字符串中的
data source=abcde01_192.168.1.177
后面那个超过了16位所以就报错。
ORACLE和SQL SERVER很不一样的地方就是,SQL SERVER中data source=服务名就可以了
ORACLE中data source=服务名_IP还要加上IP才能正常访问。经过多次实验只要把
客户端安装文件下 network\admin\tnsnames.ora
文件的内容
加一个abcde01=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = ****)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = abcde01)
)
)连接字符串里面就可以不用写
data source=服务名_IP
直接写
data source=服务名(如abcde01)
我想知道:
1.有没有什么方法可以突破那个连接字符串data source=后面最多只能跟16个字符的限制。
2.如果去修改每个客户端的tnsnames.ora文件才能正常访问的话,BS系统还好,只要改一个就行,
如果是CS系统有几百个客户端岂不是每个客户端都要去修改?
不知道是不是。NET提供的OCI。DLL那个文件有BUG,
还是ORACLE有问题。
不会啊,没说固定要IP啊,我使用的Oracle 9i使用Net Manager配置网络服务,不需要Ip啊。
这个我使用的连接字符串:
connectionString = "user id=xxx;data source=Ja_test;password=xxx";
ORACLE中data source=服务名_IP还要加上IP才能正常访问。
不会啊,没说固定要IP啊,我使用的Oracle 9i使用Net Manager配置网络服务,不需要Ip啊。
这个我使用的连接字符串:
connectionString = "user id=xxx;data source=Ja_test;password=xxx";
这位兄弟讲讲怎么配置
|
Local +
|
ServiceNaming + 添加一个ServiceNaming.这个服务名不需要加ip,是连接字符串中的datasource.第一步,添加本地的Net Service名;
第二步,选择网络协议(默认TCP/IP);
第三步,添加Host名,可以是服务器主机名,也可以是IP地址。(端口默认 1521);
第四步,添加服务器中的Service名。
测试连接的时候,默认是用Scott/tiger的,需要自己改一下。
<add key="oracleConnection1.ConnectionString" value="user id=vv;data source=aa;password=dd"/>
最好不要直接修改network\admin\tnsnames.ora的内容,直接用Oracle提供的Net Manager工具就可以设置好到服务器的连接了。
然后链接字串中的Data Source=用Net Manager建立的连接的名字,不用加IP地址的,如果原来是加IP地址的话,估计是当初安装Oracle的时候,系统自动建立的连接的名字,你可以修改的啊。
如果是B/S程序,只需要在服务器上修改这个配置就行了,如果是C/S的程序,要在每个客户端去修改。