How to call LinkedServer tables in sqlserver from SSAS - ssas

I have created linked server in MSSQL.
Next i will try to create a cube in SSAS,
when i create Data Source View in SSAS that MSSQL not showing linked server name.
Is it possible to access linked server tables from SSAS?

Why do you need a linked server? Are the tables for your cube in different databases on different servers? If they are, have you tried creating a view in your primary server that uses the linked servers, then have these views in your SSAS Cube DSV?
Also, do look into data warehousing, it will probably be faster to process if you gather all the data you want in the cube into a single database first. If you have large databases this may be essential.

Related

Identify relationships between multiple databases in SQL

I am working on migrating an application from one server to the other. According to the connection string of this application, it is touching different databases. Meaning a view query in DB1 will touch a table in DB2. So while migrating this application, I constant get to see chain of 'Database unavailable' errors and every time I see such error, I have to migrate that specific database.
I am wondering, since we have ER diagrams to know about relationships between tables in a database, is there any way in SQL server to know the relationships/linkages between different DATABASES in a server? Are there any tool that does this?
Depending on number of databases you have, here would be a somehow quick way you can find that out (number of required search = number of available databases in the server):
Use 'SQL Search' application of Red-get
(https://www.red-gate.com/dynamic/products/sql-development/sql-search/download)
and search for the other database names one after another by selecting
your database of interest. Select all objects.
If you have metadata oriented design (a Stored Procedure looping through the names of different other Stored Procedures / Functions from different databases which are stored in a table as metadata and executing them with a wrapper Stored Procesure), then you will have make use of SQL Locator software (http://www.sqllocator.com/Downloads.html) to search for database names in SQL Table values.
Both of the above software are free.
You need to have SSMS (SQL Server Management Studio) installed to be able to use this application. After installation, ‘SQL Search’ will be directly available in your SSMS as an add-on.
SQL Locator can be directly used by providing the SQL Server name and your SQL Server credential.
Note:- The above steps will help you find out the referenced databases from a certain database within the same SQL Server. If you need to find out databases from Linked Server (I do not believe your question is asking that anyways), then you will have to smartly utilize the same above tools to find the external server reference by searching the external server name.

How to synchronize Tables (Structure not Data) of two SQL Server databases?

We have two different databases of SQL Server, called DB1 and DB2. I want to synchronize tables, views and stored procedures of these two databases. Let me clarify, I am not asking for a data sync - what I want is to only sync the structure of the two databases.
Thanks in advance, regards.
What you are asking for is called "Schema Compare", and there are several tools that can do this for you, including the free SQL Server Data Tools, available for download here.
Views and stored procedures can simply be scripted from one database and applied to the other, but for tables you need to calculate the differences between the existing and new table and generate a script to apply the changes without loosing the data currently in the target tables.

Access VBA, Link to Oracle and run SQL

I am wondering if it is possible using vba in access is to create a database and link it with a oracle sql developer database and run a certain SQL code.
I would like to do this for many years about 20+ years. there are millions of rows for each so it would be best to create an access database for each year.
Is there a way to do this, if not what is the best way to do so.
Thanks
If you can create an ODBC data source pointing to your Oracle database, then you can add the tables from this database into Access as linked tables. You can then do all the normal Access things with these tables, and you can create pass-through queries if you want to run SQL commands. Click here for Microsoft's description of how to set up pass-through queries.
By the way, if all the data on the Oracle side is in one set of database tables, then there's no advantage to setting up multiple Access databases for separate years.

Querying multiple database systems

Is it possible to query (or better, join) data from two different database systems? Let's say I have postgresql and SQL Server and I want to join a table from postgres to a table in SQL Server?
It doesn't matter which programming language.
What about utilizing a linked server? I use one to query an AS400 and join the results back to Microsoft SQL Server.
Quote from Microsoft documentation:
Configure a linked server to enable the SQL Server Database Engine to
execute commands against OLE DB data sources outside of the instance
of SQL Server. Typically linked servers are configured to enable the
Database Engine to execute a Transact-SQL statement that includes
tables in another instance of SQL Server, or another database product
such as Oracle. Many types OLE DB data sources can be configured as
linked servers, including Microsoft Access and Excel. Linked servers
offer the following advantages:
The ability to access data from outside of SQL Server.
The ability to issue distributed queries, updates, commands, and transactions on heterogeneous data sources across the enterprise.
The ability to address diverse data sources similarly.

Sync views from Local datatbase to tables SQL Azure Database

Can we sync views on local database with tables on SQL azure database using SQL Azure Datat Sync[Preview]? If yes, then how?
In my opinion, the jury is still out on SQL Azure Data Sync. It's been in preview for years and still is.
When you say sync, and you looking to take the results of a local view and persist them as a table in SQL Azure?
If so, you can create a SELECT INTO, taking the data from the local view and letting the SELECT INTO make a table out of it. There are some things you need do to make the SQL Azure DB available locally:
http://msdn.microsoft.com/en-us/library/azure/ee336282.aspx
https://dba.stackexchange.com/questions/59328/insert-to-sql-azure-through-linked-server-very-slow