请问谁怎么怎么配置ASP.NET 中web.config 连接ORACLE数据库啊。 我是这样写的:
<add name="ConnectionString" connectionString="Data Source=DummyDatabase ;user id=用户名;password=密码;" providerName="System.Data.OracleClient"/> tnsnames.ora文件如下: DummyDatabase =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = IP)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = eb)
)
)可就是报那个错误:ORA-12154: TNS: 无法处理服务名
求高人帖个配置代码 最好能用的哦。TK
<add name="ConnectionString" connectionString="Data Source=DummyDatabase ;user id=用户名;password=密码;" providerName="System.Data.OracleClient"/> tnsnames.ora文件如下: DummyDatabase =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = IP)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = eb)
)
)可就是报那个错误:ORA-12154: TNS: 无法处理服务名
求高人帖个配置代码 最好能用的哦。TK
Oracle专用接口(oracle自身提供):
方法(1):<appSettings>
<add key="ORACLEConnectionString" value="Provider=OraOLEDB.Oracle.1;
Persist Security Info=False;Password=blah;User ID=greg;Data Source=sph;" />
<appSettings>Oracle通用接口:
方法(2):
<appSettings>
<add key="ORACLEConnectionString" value="Provider=MSDAORA;Password=tiger;User ID=scott; Data Source=sph;Persist Security Info=False;Integrated Security=yes" />
<appSettings>
OracleClient:
<appSettings>
<add key="ConnectionString" value="Data Source=testDB;User ID=scott;Password=tiger;" /> </appSettings>
</connectionStrings>我这样写可以连接成功,但是为何改成:
<add name="ConnectionString" connectionString="Data Source=DummyDatabase ;user id=用户名;password=密码;" providerName="System.Data.OracleClient"/> tnsnames.ora文件如下: DummyDatabase =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = IP)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = eb)
)
)就是连接不成功呢?晕倒
要是vs自带的,得用user,不能用user id
你把user id改成 user 试试
按照你的方法改了还是不行哎。
<add name="ConnectionString" connectionString="Data Source=DummyDatabase;User=用户;Password=密码;" providerName="System.Data.OracleClient"/>
</connectionStrings>
是DummyDatabase吗?还是 eb?
你tnsnames里边的service name 和库名不一致,可以考虑换eb试试,或者重新建个监听,用一致的名字。
<add name="DBConnection" connectionString="Data Source=orcl;Persist Security Info=True;User ID=admin;Password=admin"/> ---连接oracle数据库 <add name="DBConnection1" connectionString="Data Source=.;Initial Catalog=hisdata_test;User ID=sa;Password=123456"/>---连接sql Server数据库
</connectionStrings>
有时候怎么配置TNSNAMES.ORA都出现ora-12154 TNS:无法处理服务名的错误!其实根据oracle的版本的不同,配置的字符串也有所不同。比如:oracle8.1.5的SQLNET.ORA文件的内容是这样的:路径:orant\NET80\ADMIN\SQLNET.ORATRACE_LEVEL_CLIENT = OFF
#sqlnet.authentication_services = (NONE)
names.directory_path = (TNSNAMES, HOSTNAME)
names.default_domain = world
name.default_zone = world
automatic_ipc = off所以服务名后面都要加上.world,比如:CARD.WORLD =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.2)(PORT = 1521))
(CONNECT_DATA = (SID = CARD))
)
但是在oracle9i下则要这样配置:CARD =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.2)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = CARD)
)
)oracle9i的SQLNET.ORA是这样的:路径:oracle\ora92\network\admin\SQLNET.ORA# SQLNET.ORA Network Configuration File: C:\oracle\ora92\network\admin\sqlnet.ora
# Generated by Oracle configuration tools.SQLNET.AUTHENTICATION_SERVICES= (NTS)NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME)所以如果按照oarcle8.1.5的配置参考oracle9i的配置,显然是不对的。因为oracle8.1.5中的SQLNET.ORA文件定义了服务名必须要有.world根据oracle版本, SID 可能是要改成service_name。 参考一下listener.ora的global_name.确定在sqlnet.ora里,names.default_domain设置空字符。排除了这些应该没什么问题了。