откройте оракул без подключения tnsnames.ora - PullRequest
0 голосов
/ 31 октября 2011

У меня есть старое приложение asp, работающее на oracle 9g, и я использую объект OracleInProcServer.XOraSession для соединения с базой данных

Set OraSession = Server.CreateObject("OracleInProcServer.XOraSession") 
Set OraBanco   = OraSession.DbOpenDatabase("ORADB01","Username/Password",cint(0))

Итак, у меня есть ORADB01 , зарегистрированный на моем tnsnames.ora

Теперь позвольте мне сказать, что мне нужно открыть соединение с базой данных, которую я не зарегистрировал на моем tnsnames.ora ... Есть ли способ открыть соединение, используя OracleInProcServer.XOraSession ?

Ответы [ 2 ]

2 голосов
/ 03 ноября 2011

Не проверено, но стоит попробовать:

Set OraBanco = OraSession.DbOpenDatabase("YourServerName:1521/ORADB01","User/Pass",cint(0))

По крайней мере это работает для связи базы данных Oracle с SQL Server.

Это не относится к вашей XOraSession, но вы можетедаже поместите всю информацию о соединении в строку подключения ODBC:

Provider=OraOLEDB.Oracle.1;Password=***;User ID=username;Data Source="(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)
    (HOST=YourDatabaseServer)(PORT=1521))
    (CONNECT_DATA=(SERVICE_NAME = ORADB01)))"
0 голосов
/ 04 февраля 2014

На вашем компьютере должен быть установлен, установлен и доступен клиент Oracle.Вы можете открыть какое-то соединение с оракулом, используя //127.0.0.1:1521/XE, поскольку это Oracle XE, а не 9i, вы используете ASP. Лучше было бы

Либо определить соединение ODBC, на уровне компьютера, либо использовать файл DNS, и вы должныу вас есть клиент Oracle на вашем сервере ASP.

или если ваш asp-сервер и компьютер совпадают, вы можете использовать IPC соединение с сервером

Я сделал это с 10G, и XE, и он работает нормально, вы должны проверить можетработа для вас на 9i.

я не знаю о 9G это было 9i, я думаю.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...