DBlink error when querying the remote table - oracle

I am creating DB link by using below command. I have not updated tnsnames.ora instead I used details in the commmand.
CREATE DATABASE LINK test
CONNECT TO apps IDENTIFIED BY xyzabc
USING '(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=awsss3270429.us.dell.com)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=dell122de))';
The DBLink was created successfully. but
When I fired below query I got the error.
select * from USER_CS_SRS#test; . table `USER_CS_SRS` exist in remote database.
Error is attached.
I am quite new to DB. Can anybody help me on the same.

You are missing a closing parenthesis at the end of your connection string. Your create statement should end:
...(CONNECT_DATA=(SERVICE_NAME=opm122de)))';
-----------------------------------------^
Recreating what you posted:
CREATE DATABASE LINK test
CONNECT TO apps IDENTIFIED BY xyzabc
USING '(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=rws3270429.us.oracle.com)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=opm122de))';
select * from USER_CS_SRS#test;
Error report -
SQL Error: ORA-12154: TNS:could not resolve the connect identifier specified
...
Adding the final ) changes that:
drop database link test;
CREATE DATABASE LINK test
CONNECT TO apps IDENTIFIED BY xyzabc
USING '(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=rws3270429.us.oracle.com)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=opm122de)))';
select * from USER_CS_SRS#test;
Error report -
SQL Error: ORA-12545: Connect failed because target host or object does not exist
...
which is a different error; for me that's entirely reasonable because I can't resolve rws3270429.us.oracle.com, never mind reach it. As your profile says you work for Oracle, presumably you can - and this either works or throws a different error. Either way the original ORA-12154 error has been fixed.

Related

SSIS Oracle source conatins no output columns

I am trying to develop an SSIS package that truncates a table in Oracle db. Unfortunately i am getting an error
When i am trying to do select from the truncated table, it works fine - connection manager is setup correctly. I've recreated connection manager just in case but that did help.
Truncated table is in the same schema as the user on which ETL is runned.
Despite an error message, task does it's job. Table get's truncated but error message still appears.
Any ideas what could be the reason?
Regards,
Lukas
2.
Component that i used is Oracle Source task inside of DFT.Oracle source is using a query "TRUNCATE TABLE schema_Name.TableName":
When i use "SELECT * FROM schema_Name.TableName" works fine.
I have the solution.
Instead of using "SQL command" inside of Oracle Source task i used "Execute SQL Task" with the same query. I connected to Oracle db using OLE DB.

Merge statement with Db link is not working

Merge statement with Db link is working fine normally .
The same merge when written inside the procedure is also working fine.
But, when I have scheduled the job for the same procedure, it is throwing error.
Tool used: Oracle SQL Developer
ORA-12154: TNS:could not resolve the connect identifier specified--ORA-06512:
Please help in identifying the issue.

SSIS project not working when reading from Oracle

I've been trying to create an SSIS project to read from an Oracle 11.x database to an SQL Server database.
When I set this up in Visual Studio 10 Shell, I do not receive any logs . It gives me a successful message but nothing happens.
I tried to connect to an Oracle 12c database and the same happened.
I tried to get data from an Oracle 11.x project and dump it into an excel file. I also tried to get data from an Oracle 11.x table and dump it into a new Oracle 11.x table (in the same database) and in both cases I got the following error:
> TITLE: Microsoft Visual Studio
Failed to start project
------------------------------ ADDITIONAL INFORMATION:
Exception deserializing the package "The package failed to load due to
error 0xC0011008 "Error loading from XML. No further detailed error
information can be specified for this problem because no Events object
was passed where detailed error information can be stored.". This
occurs when CPackage::LoadFromXML fails. ".
(Microsoft.DataTransformationServices.VsIntegration)
The package failed to load due to error 0xC0011008 "Error loading from
XML. No further detailed error information can be specified for this
problem because no Events object was passed where detailed error
information can be stored.". This occurs when CPackage::LoadFromXML
fails. (Package)
------------------------------ BUTTONS:
OK
Can anyone help me please?
Thank you
You haven't posted how you are trying to get data from oracle exactly so can say much about the error. I can only give my solution in 2008 r2:
create an oracle linked server in your sql server and then use an open query in the SSIS package to pull anything you need

ORA-02019: connection description for remote database not found

I have created a db link AM_ADMIN through SQL Developer:
I am trying to check if it is a valid database link. When I test it from the SQL Developer wizard it is successful. But when I use the below command:
SELECT * FROM dual#AM_ADMIN
I'm getting the error:
ORA-02019: connection description for remote database not found
How can I rectify this error?
According to your screenshot you created the database link as AM_ADMIN.INT.xxx. You are calling it without the domain, just as #AM_ADMIN. Unless you have a sqlnet.ora which defines names.default_domain with the same domain value (and have SQL Developer configured to recognise that), you will need to fully-quality the link name when you use it:
SELECT * FROM dual#AM_ADMIN.INT.xxx
This error will occur when a database link is not made PUBLIC, and the user who created the link is different to the user attempting to use the link. For example, creating the link as the SYS user and then trying to use the link as the AM_ADMIN user.
In this instance either make the link PUBLIC (which all users can then access), or grant the AM_ADMIN user the privileges to create a database link.
I had the same problem and I found out that it was a stupid error caused by (Description = (... HOST = !...). When you create Database Link in USING clause, you should:
use the keyword HOST if you are using the IP address
use keyword HOSTNAME if you are using the name
I just wanted to share it because I lost half a day trying to figure that out and I couldn't find any information about it...

Setting up usage tracking with Direct insert set to No

I'm trying to set up OBIEE 10g usage tracking feature and dashboard reports, with Direct Insert equals to No i.e. with flat file.
I have deployed/merged usage RPD and catalog with my existing RPD/catalog and set NQSConfig.ini parameters accordingly (DIRECT_INSERT=NO).
However, I'm the usage tracking reports fail to run due to some ORA error. This is obvious since these reports are being redirected to database (probably these are setup for DIRECT_INSERT=Yes)
State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 17001] Oracle Error code: 12154, message: ORA-12154: TNS:could not resolve the connect identifier specified at OCI call OCIServerAttach. [nQSError: 17014] Could not connect to Oracle database. (HY000)
How can I configure these reports to work with the log file (DIRECT_INSERT=NO).
Thanks.

Resources