has anyone ever been able to create a sql server linked server to SAS?
I have created an ODBC connection (32bit) to SAS
This ODBC works for e.g. QlikView, Tableau etc.. but how would set it up for SQL server?
Provider?
Product name?
Data Source?
Location?
Catalog?
If the DSN is already created, you can access it in SAS directly using:
libname myServer odbc dsn=PROD_PL0000 schema='dbo';
Then you'll see it as a SAS library that you can work with natively. If you do it via the GUI you can check a box to have it reconnect at start up.
I also have the same problem. The problem is in the SAS provider for OLE DB connections, it can't create a popular instance with SAS tables.
To create the linked server via OLE DB you need to go to the SAS website, download the files and install on the SQL server to set up the connection.
https://support.sas.com/downloads/package.htm?pid=648
Related
This must be simple but I can't find the documentation. I have an ODBC connection to an Intersystems Cache' database that works fine in MS Access, but I can't see how to do the same in SQL Server (15.0.18930.0).
In Access, I did this: Blank Desktop Database, Create, External Data tab, ODBC Database, Link to the data source, (Select Data Source) --> Machine Data Source --> click on ODBC data source we already created. Then it gives me a list of tables to link to, and we're done.
The data source was System DSN, with various fields and a connection string like
DRIVER={InterSystems ODBC35};SERVER=xxxx;PORT=xxx;DATABASE=xxx;UID=xxx;PWD=xxx;
How is this done with SQL Server?
Thanks!
How is this done with SQL Server?
For SQL Server, write an SSIS package that uses the ODBC driver. Note that you may need to run the package in 32bit mode if the ODBC driver is 32bit. Then use that package to load a SQL Server table, or use an SSIS Data Streaming Destination to enable the SQL Server to dynamically run and read data from the SSIS package.
We are trying to load data in a table in Sybase IQ from MS SQL Server. We are trying to load it by writing a stored procedure which does insert into ....
Currently, it is unsuccessful as the stored procedure is not able to find the source table directly.
Is it possible to create linked server kind of thing in Sybase IQ to connect to MS SQL source database so that it behaves like a local table?
You can use ECDA (used to be called Direct Connect) - there's an explanation of how to set it up here using ECDA on a separate Windows host (easier because then you can use a standard ODBC driver to connect to MSSQL).
https://blogs.sap.com/2015/11/18/connect-sybase-iq-16-on-aix-with-remote-server-to-mssql-with-ecda-without-odbc-configuration/
I have created a linked server to an Interbase database with the OLE DB Provider from IBProvider.com. This worked really well, but apparently this IBProvider was only a test version which has expired. Instead of buying the full version I was wondering whether there is another way of fetching the data from that database or creating the linked server.
I know there is the OPENDATASOURCE() function allowing me to connect and query a remote data source.
But to use this function I need to enable DATA ACCESS on the server and I'm not sure what possible disadvantages this could have.
I could also use DTS and copy the tables to my SQL Server but I don't think this is best practise.
So, are there any other possibilites?
I did not found any solution to this so I bought the full version of this OLE DB Provider from IBProvider.com
I have an Access 2007 database with a table in it that is linked to a SQL server. I need to roll this version of the database out to approximately 10 people in different states. In order to do that, they need an ODBC connection to the SQL server installed on their machines. I am looking for a way to do this remotely. Either through VBA in the database itself or perhaps a Batch file linked to their shortcut....I am open to ideas....
If you're naming the SQL Server instance and database exactly the same way on each machine, you should be able to create a DSN on your testbed machine, use it to link tables, then convert it to a DSN-less connection and distribute that.
system ODBC is configured via the registry -- see HKLM\SOFTWARE\ODBC\ODBC.INI. You will need a key to match the DSN name and an entry in ODBC Data Sources for the key.
I found:
How do you setup a linked server to an Oracle database on SQL 2000/2005?
The DSN tested successfully but after using the stored procedures outlined in the article to create the linked server the 'open query' returned the following message:
OLE DB provider "MSDASQL" for linked server "XXX" returned message "Specified driver could not be loaded due to system error 1114 (Oracle in instantclient11_1).".
Does something need to done differently on MSSQL 2008? I was successful with MSSQL 2000.
I tried using the GUI to create the LS but received the error where it could not get the error message.
I am using instant client 11_1 on Windows server 2003.
You shouldn't be using the MSDASQL as the provider you should be using:
#provider=N'MSDAORA'
or
#provider=N'OraOLEDB.Oracle'
At least this is how my Oracle linked server is configured on every database server I have linked to Oracle. Some have the Oracle native from installing a complete Administrative Client setup, others have thin client. I don't have a DSN setup in ODBC on any of them. If you can TNSPING the Oracle instance from the command prompt on the server, then you should be able to connect to it from SQL with a linked server.
I had this error when I tried to install both 32-bit and 64-bit ODBC drivers. I had a separate subfolder for 32-bit and 64-bit under the C:\Oracle and I set both the PATH and TNS_ADMIN values to C:\Oracle. The issue went away when I modified the PATH and TNS_ADMIN to use the 64-bit path C:\Oracle\win64\instantclient_12_1.