• (I'm also looking for a detailed walkthrough. Myself I usually go through:

    1. Install Oracle 64-bit client (11gR2) with Administrator option (not InstantClient, in order to diagnose connectivity), to make sure the latest OPD.NET components are installed, to OracleHome1.

    2. Configure OracleHome1 (tnsnames.ora) en test connectivity using sqlplus: sqlplus user/password@mytnsalias

    3. Reboot (to make sure the correct registry settings are available in SQLSERVER)

    4. Repeat 1-3 with the Oracle 32-bit client to a new OracleHome (OracleHome2). As it installed latest, it should be the default Oracle-Client (ORACLE_HOME variable set)

    5. Configure the oracleoledb provider in SQLServer (especially allow in process=true). Too Bad sqlexpress management studio doesn't expose the provider properties. Changed them remote using a full fledged management studio

    6. Reboot one more time or restart SQLServer, so the allow in process settings affects new Linked servers

    7. Just to be sure, test connectivity via sqlplus (as you have to maintain 2 oraclehomes, 1 for 64-bit, 1 for 32-bit)

    8. Setup a linked server using OraOLEDB.Oracle : Provider: Oracle Data Source: mytnsalias

    9. Test using OPENQUERY Select Dummy from OPENQUERY (mylinkedserver,'select dummy from dual;')

    Nice procedure posted bro!!..