sql >> Database teknologi >  >> RDS >> Sqlserver

Forespørg to databaser med Oracle SQL Developer

Ja, det er muligt. Forbindelser i SQL Developer hjælper dig ikke - du bliver nødt til at konfigurere en databaselink fra din Oracle-database til SQL Server-databasen.

Før du opretter et databaselink, skal du konfigurere en heterogen gateway for at oprette forbindelse til SQL-serveren.

Generelle trin omfatter:

  • Installer Oracle ODBC-drivere på serveren, der får adgang til den eksterne SQL Server-database ved hjælp af databaselinket.

  • Konfigurer ODBC-forbindelsen på den lokale Oracle-database ved hjælp af Windows ODBC-datakildeadministratoren

  • Test ODBC-driverne for at sikre, at der oprettes forbindelse til SQL Server-databasen.

  • Konfigurer Oracle Heterogeneous-tjenesterne ved at oprette en initodbc.ora-fil i Oracle-databasen.

  • Rediger Listener.ora fil.

        SID_NAME is the DSN for the remote database.
        ORACLE_HOME is the actual Oracle home file path.
        PROGRAM tells Oracle to use heterogeneous services.
    
        SID_LIST_LISTENER =
        (SID_LIST =
        (SID_DESC =
        (SID_NAME=ora_sid) -- Enter the DSN on this line
        (ORACLE_HOME = c:\oracle10gdb) -- Enter your Oracle home on this line
        (PROGRAM = hsodbc) ) )
    
  • Rediger filen Tnsnames.ora file at pege på gatewayen

        (DESCRIPTION=
        (ADDRESS_LIST=
        (Address=(PROTOCOL=TCP)
        (HOST=
        -- (Server x)
        (PORT=1521))) -- Enter the port on which the server x Oracle installation
        -- is listening
        (CONNECT_DATA=(SID=Cas30c)) - Enter the DSN name
        (HS=OK) -- Enter this value. It tells Oracle to use hetergeneous services
        )
    
  • Genindlæs lytteren på den lokale Oracle-database

  • Opret et databaselink på den lokale Oracle-installation, der får adgang til den heterogene forbindelse, som igen forbinder til SQL Server.

Når databaselinket er oprettet, bør du være i stand til at indsætte i databasen ved hjælp af et simpelt:

 insert into <oracle_tablename>
 select * from <sqlserver_table_name>@dblink_name

Yderligere læsning:



  1. lagring af fremmednøgle, ikke fra form POST-metoden, men fra formulardata, jeg allerede har

  2. ORA-06553:PLS-801:intern fejl [55018] ved test af funktion, der returnerer ROWTYPE

  3. TFDQuery.Prepare kan ikke bestemme parametertyper for INSERT-forespørgsel på MS SQL SERVER

  4. Sådan sender du data til databasen ved hjælp af Fetch API i React.js