# Database Discussions > Oracle >  Error on connecting from Oracle to SQL Server with generic connectivity

## georgia84

Hello,

I am trying to setup a connection using Heterogeneous Services  between Oracle 10g R2 on Linux RH4 and SQL Server running on Windows 2k.

I have configured an ODBC driver (unixodbc from www.unixodbc.org) to connect to the windows database, and everything is going ok from the command line, using the odbc utility 'isql':
$ /usr/local/unixodbc/bin/isql MSSQLTestServer user pass
+---------------------------------------+
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
+---------------------------------------+
SQL>select count(*) from tab;
15
SQL>

MSSQLTestServer is the odbc data source that i've set in odbc.ini file.

After i have made the configurations in Oracle (the listener.ora, tnsnames.ora, initHSDWNCUBE1.ora files) and created the database link, when i try to execute a select, i get the following error:

 select * from tab@hslink;

ERROR at line 1:
ORA-28500: connection from ORACLE to a non-Oracle system returned this message:
[Generic Connectivity Using ODBC]DRV_InitTdp: DB_ODBC_INTERFACE (2082): ;
[unixODBC][FreeTDS][SQL Server]*Unable to connect to data source* (SQL State:
S1000; SQL Code: 0)
ORA-02063: preceding 2 lines from HSLINK

So you can see the whole picture, i will also give the configuration of the files:

LISTENER.ORA
-----------------
TEST =
  (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = tcp)(HOST = 10.0.1.80)(PORT = 1522))
    (ADDRESS = (PROTOCOL = ipc)(KEY = EXTPROC))
  )

SID_LIST_TEST =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = /app10g)
      (PROGRAM = extproc)
    )
    (SID_DESC =
      (GLOBAL_DBNAME = test)
      (ORACLE_HOME = /app10g)
      (SID_NAME = test)
    )
    (SID_DESC=
      (SID_NAME=*hsdwncube1*)
      (ORACLE_HOME=/app10g)
      (PROGRAM=hsodbc)
      (ENVS=LD_LIBRARY_PATH = $LD_LIBRARY_PATH:/usr/local/unixodbc/lib:/usr/local/lib:/usr/local/freetds/lib)
    )
  )


TNSNAMES.ORA
-----------------
hsdwncube1id =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = tcp)(HOST = 10.0.1.80)(PORT = 1522))
    (CONNECT_DATA =
      (SID = *hsdwncube1*)
    )
    (HS = OK)
  )


$ORACLE_HOME/hs/admin/init*hsdwncube1*.ora
-------------------------------------------

HS_FDS_CONNECT_INFO = MSSQLTestServer
HS_FDS_TRACE_LEVEL = 4
HS_FDS_TRACE_FILE_NAME = /tmp/hsodbcsql.trc
HS_FDS_SHAREABLE_NAME = /usr/local/unixodbc/lib/libodbc.so

set ODBCINI=/usr/local/unixodbc/etc/odbc.ini

I have tried everything, and i don't know what's wrong with my configuration, i didn't find any clues on forums/metalink.
Please help!!!! 

Thank you in advance,
Georgia

----------


## skhanal

Why don't you create ODBC as hsdwncube1 and change 

HS_FDS_CONNECT_INFO = MSSQLTestServer

to

HS_FDS_CONNECT_INFO = hsdwncube1

----------


## georgia84

Hello,

I have tried what you suggest and it doesn't work, i get the same error.
The MSSQLTestServer was the data source name that i have defined in the odbc.ini file, so it should work :Frown: .

Thanks for your suggestion.
Any other ideas?

Thanks,
Georgia

----------


## skhanal

This might help

http://forums.databasejournal.com/sh...ad.php?t=43682

----------


## CESAR.ADVINCULA

hello GEORGIA can u explain me how did you make the ODBCUNIX Configuration, i am a beginner in the linux world and Oracle Database Worl can you help me? please!

Regards,
Cesar advincula

----------

