SSRS: Dataset error with odbc datasource - reporting-services

I am trying to create a dataset using a shared datasource.
My datasource is a ODBC connection to Impala.
When I add the datasource in SQL Server Reporting Builder, the connection is successful.
But when I try to add a dataset with this connexion, I get this error:
ERROR [IM002] [Microsoft][ODBC Driver Manager] The name of the data source is not found and no default driver was specified
This error only happens in remote mode.
Thanks in advance.

The ODBC connection has to exist on the PC client that is using Report Builder.
Thanks Jesse

Related

Add datasource to Report Builder using ODBC

I am trying to create a datasource in Report Builder using an ODBC connection (Progress OpenEdge 10.2B Driver)
I've set up the connection and created a User DSN. Tested the connection and got a connection established success message so pretty sure it's set up correctly in ODBC Data Source Administrator.
When I try to add the data source in Report Builder, I'm selecting the option to "Use a connection embedded in my report" and select connection type of ODBC from the Connection Type lookup.
For the connection string, I can select the data source name that I set up, add in my user name and password, but when I test the connection, I get the following error:
ERROR [HY000] [DataDirect] [ODBC Progress OpenEdge Wire Protocol driver]Insufficient information to connect to the data source.
ERROR [HY000] [DataDirect] ODBC Progress OpenEdge Wire Protocol driver] Insufficient information to connect to the data source.
I must be doing something wrong but can't see anything obvious. Any advice would be greatfully received.
Thank you
Here's a few KB articles that might help you:
https://knowledgebase.progress.com/articles/Article/5796
https://knowledgebase.progress.com/articles/Article/7460
https://knowledgebase.progress.com/articles/Article/9314
Another option is that the user you are using to connect to the database with doesn't have SELECT privileges. This KB gives you details on how to do that: https://knowledgebase.progress.com/articles/Article/P101721

Oracle ODBC ERROR [IM004] [Microsoft][ODBC Driver Manager] Driver's SQLAllocHandle on SQL_HANDLE_ENV

I have installed the Oracle client 10g (release 10.2.0.1) on to a windows 2008 64bit machine.
I have set up the tnsname.ora file, checked the path (starts with path to oracle client folder) and oracle_home variables.
I have also checked the security permissions on the client folder and this has read/write for the authenticated user.
I set up an ODBC32 connection using the Oracle Oracle Driver (as opposed to the Microsoft one) and tested connection successfully.
I set the Runtime64Bit property in the project in SSIS (SQL Server 2008 R2) to false.
When I try to test connection of this ODBC DataSource in SSIS I get this error
Test connection failed because of an error in initializing provider.
ERROR [IM004] [Microsoft][ODBC Driver Manager] Driver's SQLAllocHandle
on SQL_HANDLE_ENV failed
I would specify the entire connection string in the SSIS Data Connection.
You do not need to rely on the ODBC connections defined on the machine (which get buried in the registry) or in files. You can then use SSIS Configuration / Project Parameters to control the details.
I uninstalled the 10g client and installed the 11g client (as the 11g works with 10g databases) and then used an ADO.Net connection with the .Net Providers\OracleClient Data Provider.
This worked, seems the 10g client doesn't play very well with Windows 2008.

connecting to a MySQL database from MSSQL Management Studio

Somehow I'm having a lot of trouble establishing an ODBC connection to MySQL from within MSSQL Management Studio. I have 64-bit versions of MSSQL and MySQL ODBC connector installed.
The local MySQL database already has a DSN assigned to it. I've used this DSN with Excel in the past and had no problems.
Now, (in SQL Man. Studio) when I access:
'Tasks' -> 'Import Data' -> '.Net Framework Provider for ODBC'
I get a helpful form asking me to enter all the connection details even though I've already registed the DSN in 'Control Panel\Data Sources'.
So, after a brief 'wait, what?", I enter:
Dsn: My_Dsn
Driver: MySQL ODBC 5.2 ANSI Driver
... and get: ERROR [IM014] [Microsoft][ODBC Driver Manager] The specified DSN contains an architecture mismatch between the Driver and Application
#
PS.
I've also tried creating a linked MySQL server in MS Studio like so: http://www.sqlservercentral.com/Forums/Topic340912-146-1.aspx
and get:
'contains no columns that can be selected or the current user
does not have permissions on that object.'
In short: no access to MySQL from within MSSQL Studio whatsoever
Thanks in advance!

Error during deploy from visual studio to analysis server

I'm connected to analysis server:localhost\sqlr2.
I'm using windows authentication,so user name and password are all grayed out.
I'm trying to deploy a project from Visual Studio BI to SQL Server 2008R2 analysis server and get the following errors:
Error 1 Internal error: The operation terminated unsuccessfully. 0 0
Error 2 OLE DB error: OLE DB or ODBC error: Login timeout expired; HYT00; A network-related or instance-specific error has occurred while establishing a connection to SQL Server. Server is not found or not accessible. Check if instance name is correct and if SQL Server is configured to allow remote connections. For more information see SQL Server Books Online.; 08001; Named Pipes Provider: Could not open a connection to SQL Server [53]. ; 08001. 0 0
Error 3 Errors in the high-level relational engine. A connection could not be made to the data source with the DataSourceID of 'Max Min Manufacturing DM', Name of 'Max Min Manufacturing DM'. 0 0
It looks like your datasource is set up wrong. When you process, what server is the cube pointed at? What account does SSAS run under? How have you set up the connection string in the datasource? Are you seeing failed login attempts in the SQL Server logs?
Error 2 OLE DB error: OLE DB or ODBC error: Login timeout expired; HYT00;
A network-related or instance-specific error has occurred while establishing a
connection to SQL Server. Server is not found or not accessible.
Check if instance name is correct and if SQL Server is configured
to allow remote connections.
I'd focus on this. I assume you must be able to connect to SQL Server in Visual Studio to build your cube, so I guess Analysis Services doesn't have permissions. Check your connection strings.
You say you're using Windows Authentication, so does the service accounts that Analysis Services runs under have access to the required database?
I would like to share my experience with this error and how I discovered the solution.
Hope it helps!
http://afsawaf.blogspot.com/2013/08/ole-db-error-ole-db-or-odbc-error.html
---Thanks #kleopatra for the advice.
In my case I was connecting with a wrong provider, I was trying to connect using SQL Server Native Client 11.0 to MS SQL Server 2005 DB which caused my similar problem.
When I reverted to version 10.0, worked perfectly!

SSIS 2012 oledb connectionstring using mirroring

I am trying to configure a SSIS 2012 project on a couple of mirrored databases.
I was hoping to be able to use the OLEDB provider, but that doesn't seem to support the Failover Partner attribute in the connectionstring.
I have tried to add the keys "Failover Partner", "Failover_Partner" and "FailoverPartner", but none of them works - the connection never tries to connect to the failover parther even if that holds the principal database. All my tests have been performed with all three variants of the attribute key.
If I use the ADO.NET connection, there is a build-in setting called "Failover Partner" in the Connection Manager, and that works like a charm, and it can connect to the database with the principal being on either one of the servers... just like it should.
My question is: Is it correct that OLEDB does not work out of the box with mirrored databases, when using SSIS 2012 agains a SQL Server 2012 mirrored database?
How I test
My test is really simple: i have a "Execute SQL Task" with an OLEDB connection manager with the following connectionstring:
Data Source=srv1;Initial Catalog=MyDatabase;Provider=SQLOLEDB.1;Integrated Security=SSPI;Auto Translate=False;Application Name=My Application;
I have tried adding the different versions of Failover Partner as mentioned above:
Data Source=srv1.domain.local;Initial Catalog=MyDatabase;Provider=SQLOLEDB.1;Integrated Security=SSPI;Auto Translate=False;Application Name=My Application;Failover Partner=srv2.domain.local;
If MyDatabase is principal on srv1, then it works. If the database is principal on srv2, then SSIS fails with the following error:
Error: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80004005.
An OLE DB record is available. Source: "Microsoft OLE DB Provider for SQL Server" Hresult: 0x80004005 Description: "Cannot open database "MyDatabase" requested by the login. The login failed.".
and the following is logged on srv1 in the error log:
Login failed for user 'DOMAIN\MyUser'. Reason: Failed to open the explicitly specified database 'MyDatabase'. [CLIENT: 10.0.0.3]
What am I doing wrong? Or do I need to change to ADO.NET which works 100% as expected?
Thanx,
Sjang
There is a failover partner parameter if you use OleDB/SQLNCLI11.1 connection string:
Data Source=srv1;Initial Catalog=myDB;Provider=SQLNCLI11.1;Integrated Security=SSPI;Failover Partner=failover_partner_name;