Setup ODBC connection between Firebird and Oracle [duplicate] - oracle

This question already has an answer here:
Unable to connect to data source: library 'gds32.dll' failed to load - Firebird Connection PHP odbc_connect
(1 answer)
Closed 1 year ago.
I would like to set up a connection between a Firebird database and an Oracle database. I know, to create an Oracle dblink, I need to configure the ODBC driver for Firebird.
I have installed the Firebird ODBC driver and set up the connection as below, but I have an error:
gds32.dll failed to load
I haven't found the gds32.dll file anywhere - where to get it, do I need to install anything else? I do the ODBC configurations on an Oracle database server, while the Firebird database runs on a different server.

You must set Firebird client library (fbclient.dll) name (and path to it if you didn't install it into system directory or added the path to the system PATH variable) in field "Client".
PS: And of course you must have the Firebird client installed on the host where you set up connection.

Related

Connecting to Oracle PDB via ODBC

I have a LOCAL Oracle 19c database. I am trying to get ADO to connect to it. The first step is to get ODBC working. I have one PDB container called orclpdb, which is what I want to use. I can connect from SQL*Plus...
Y:\INSTALL_UNZIP\bin\sqlplus.exe acs/<Password>#localhost:1521/orclpdb
I go into the 64-bit ODBC Administrator, and had to fight a little bit (adding OCI_LIB32 and TNS_ADMIN paths), but finally got the ODBC Admin tool to connect, but ONLY to the root/system database. My root question is 'How do I get ODBC administrator to connect to a specific container DB?
Within the ODBC Administrator, the TNS Service Name field dropdown only shows ORCL, not orclpdb. Again, I can connect using ORCL, but as system/.
UPDATE: Due to issues such as this, I switched most apps to Devart's Oracle Data Access components to Delphi. They have a DIRECT mode, which does not need SQL*Net or TNS stuff
.
Make sure your TNS_ADMIN/tnsnames.ora file has an entry for the PDB (orclpdb).

Export Database connection to Oracle Developer

I have a database Connection established in odbcad and Microsoft Access (aswell as working in Excel) via ODBC and want to also get it working in Oracle SQL developer.
It is a Windows SQL Server as far as i know and I have tried several Settings, of which None works. I have also installed Driver for ODBC. I would like to Import Settings into SQL developer as applied in MS Access, is there any possibility?
No, SQL Developer is a Java application and uses a JDBC driver.
But if you look at the odbc properties for your connection, those should largely translate to what you need to define a basic connection.
Oracle:
Server name or IP address of the DB, port # for the listener, and the name of the SID or Service, plus a valid username and password is all you need to connect to Oracle.
What error do you get when you try to connect?
Show us what you're trying.
Update:
You're trying to connect to SQL Server but you're getting"
Native SSPI library not loaded
You're trying to use OS Authentication for your connection. For this to work with the jTDS driver, you need to copy a DLL file named ntlmauth.dll (which is for NT authentication) under the jtds-x.x.x-dist\x86\SSO\ or jtds-x.x.x-dist\x64\SSO\, to any directories in the PATH environment.
Please update your question such that's it's clear you're connecting to SQL Server and share the error message so others can find it.
I imagine this question is a duplicate of many previous iterations of the same challenge.

Oracle SQL Developer - Issue with JDBC Driver

I've:
Windows 7 x64
My 11G Oracle client as per below
C:\Oracle\product\11.2.0\client_1
My SQL Developer (downloaded the kit with JDK 8 included, but installed the JSK separately just in case) dir as per below
C:\sqldeveloper
When I try to connect using TNS I have
no ocijdbc12 in java.library.path
If I go to Settings -> Database -> Advanced and choose my Oracle dir manually I get this:
Testing the Oracle Home located at C:\Oracle\product\11.2.0\client_1
Testing client directory ... OK Testing loading Oracle JDBC driver ...
OK Testing checking Oracle JDBC driver version ... Failed: Minimum
driver version 11.2.0.3 required, specified driver version is
11.2.0.1.0
So I looked into upgrading the JDBC driver, but I can't use the check for updates feature, since it appears to be blocked in my virtual machine.
I got the ojdbc7.jar from the SQL developer directory and copied it to C:\Oracle\product\11.2.0\client_1\jdbc\lib, and now I get the error below:
Testing the Oracle Home located at C:\Oracle\product\11.2.0\client_1
Testing client directory ... OK Testing loading Oracle JDBC driver ...
OK Testing checking Oracle JDBC driver version ... OK Driver
version: 12.1.0.2.0 Testing testing native OCI library load ...
Failed: Error loading the native OCI library The native OCI driver
could not be loaded. The system propertyjava.library.path contains the
entries from the environment variable PATH. Check it to verify that
the expected native library directory
C:\Oracle\product\11.2.0\client_1\bin is present and precedes any
other client installations. java.library.path =
C:\sqldeveloper\jdk\jre\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\Oracle\product\10.2.0\client_1\bin;C:\Oracle\product\11.2.0\client_1\bin;C:\Oracle\product\11.2.0\client_2;C:\Oracle\product\11.2.0\client_2\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\ARQDISP\;C:\Program
;.
Have no idea what I'm doing at this point. Could you please help?
Its missing drivers. So in my case I installed Oracle Client from http://www.oracle.com/technetwork/topics/winx64soft-089540.html
and set the path variable accordingly.
Here's a blog post that shows how to tell SQL Developer where and which installed client to use :
https://www.thatjeffsmith.com/archive/2014/01/oracle-sql-developer-4-and-the-oracle-client/
Restart your SQL Developer.
I had similar issue. Moving from sqldeveloper 4.0 to 4.1, imported all my connections, but in 4.1, I would get 'no ocijdbc12 in java.library.path'.
I opened up my current connections (right-click on any connection and choose properties) all of which the connection Type is TNS. The 'Connect Identifier' was checked with the connections network alias name entered there. I checked on the 'Network Alias' check box and selected the same name and then the connection worked.
I went back to 4.0 to examine my connections there and it appears that the alias name works fine with the 'Connect Identifier' selected but not in 4.1
I had to update all my many connections to use 'Network Alias'.
Error loading the native OCI libraryThe native OCI driver could not be loaded and when trying to connect to a database i was getting no ocijdbc12 in java.library.path
For me the error was solved after i have created a new variable ORACLE_HOME with the value ....(path of the folder where the sql developer was insataled)\jdk\jre. Then i have added at the begging of the Path variable %ORACLE_HOME%\bin.
At first i have created a system variable that was pointing to the folder of the installation of the dev express and that was not working
For database selecting the connection properties and changing the connection type from TNS to Basic and providing the other details (Service name/SID) for the connection resolved the issue for me
Maybe it helps having a look into answer of my post about similar topic:
How to get Sqldeveloper 19.1 64-bit working with instantclient_12_2 on Windows enterprise PC without admin privileges?
The mentioned .bat file shows all you need.
If you have admin privileges or permissions to change any environment variables, then it will probably be the better way without using .bat file.
When I try to connect using TNS I have
no ocijdbc12 in java.library.path
It is so stupid and funny, at the same time, what I found.
I get the same error and the only difference between when it is OK and when is not is...
the TNS definition in tnsnames.ora
Simply add (maybe once again if it disappeared) the TNS definition of your database, like:
XE.WORLD=
(DESCRIPTION=
(ADDRESS=
(PROTOCOL=TCP)
(HOST=localhost)
(PORT=1521)
)
(CONNECT_DATA=
(SERVICE_NAME=XE.WORLD)
(SERVER = DEDICATED)
)
)
and restart SQL Developer.
Connection configuration will keep the name (XE.WORLD) even if it is already gone from tnsnames.ora. If it is not there, on the connection attempt, it will return that misleading error.
My setup: SQL Developer 4.1.4.21, ojdbc8.jar, connection to Oracle 19c.

Connecting to Oracle database from another machine on LAN

Am a newbie to oracle, I've Oracle Database installed on my windows machine and I can connect to the database without any problem from my machine using the sqlPlus / SQL Developer. And I have a java application in my machine which needs to connect to the Database using JDBC driver. After downloading the ojdbc driver I can connect to the java application by providing the connection url as jdbc:oracle:thin:#127.0.0.1:1521:orcl
Now, I want to know how can I connect to my oracle database that is installed in my machine (ip address:10.0.xx.xx) from the java application which is running in another machine (ip address:10.0.yy.yy). BTW both the machines are connected in LAN.
Do I need to change anything in listener configuration or in tnsnames.ora file?
I checked these links for reference before posting this question:
How to connect to an Oracle DB from another system
also Cannot access oracle using sqlplus from another machine on the LAN
Please Suggest me how can I do this one. Thanks in advance.
The JDBC url has this form
jdbc:oracle:thin:#HOST:PORT:SID
So if you wanted to connect to an oracle server running on 10.1.2.3, on port 1521 (the default one), and on a database named 'stackoverflowdb' you'd use:
jdbc:oracle:thin:#10.1.2.3:1521:stackoverflowdb

Microdoft ODBC for oracle defined source not being picked up by application and throwing SQLConnect() failed

I have a 32 bit .net exe (on a win 7 machine) which runs and writes data to an oracle db. For this application to access the DB I have created a ODBC source (Microsoft ODBC for Oracle) under System DSN of odbcad32.exe from c:\windows\syswow64.
Instead of picking this source the application is picking a default connection source for the user. Please see below. (from sqlnet.ORA)
Fatal NI connect error 12560, connecting to:
(DESCRIPTION=(ADDRESS=(PROTOCOL=BEQ)(PROGRAM=oracle)(ARGV0=oracleORCL)(ARGS='(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))'))(CONNECT_DATA=(SID=ORCL)(CID=(PROGRAM=D:\Projects\abc\Web\dll\reader.exe)(HOST=abc-43DGMX1)(USER=NGolia))))
The application (exe) is obviously not able to connect to the correct DB and throws a
ERROR SQLConnect() Failed.
Could anyone help let me know what could be missing? Am I missing any environment variables or
Are you able to test the connection in the Oracle ODBC Driver Configuration? If the application is 32bit, you're using the correct odbcad32.exe. I would check your tnsnames.ora in your $ORACLE_HOME and verify the database information looks correct there.

Resources