如何在 Microsoft SQL Server Analysis Services 中使用 MySQL 作为数据源?

Posted

技术标签:

【中文标题】如何在 Microsoft SQL Server Analysis Services 中使用 MySQL 作为数据源?【英文标题】:How do I use MySQL as data source in Microsoft SQL Server Analysis Services? 【发布时间】:2010-05-06 09:30:11 【问题描述】:

我已经安装了latest .net connector,我可以添加 mysql 数据库作为数据源,甚至可以浏览 Business Intelligence Studio 中的数据。

问题是我无法创建数据源视图,或者如果我确实创建了一个没有表的视图,但在出现相同错误后尝试添加它们。

具体来说,看起来数据源视图向导尝试使用方括号/大括号针对 MySQL 数据库提交查询,并且查询炸弹。

我收到如下错误消息:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '[my_db].[cheatType]' at line 2

如何做到这一点?

【问题讨论】:

我建议改用 OLEDB 现在有很多连接器可供使用,但其中一些仍然存在一些严重的错误。请查看我的 awnser 以了解正确的用法! 【参考方案1】:

获取 MySQL (6.3.5) .net 连接器(来自 MY SQL) 编辑连接字符串(在设计器中粘贴连接字符串),使其具有新的“SQL SERVER MODE=True”选项。

显然它会影响性能 - 但你能做什么

我的示例连接字符串...(密码和用户 ID 省略)

server=svr215;User Id=;password=;Persist Security Info=True;database=dw;sql server mode=true

【讨论】:

将 SQL SERVER MODE 设置为 True 对我有用。很好的提示,谢谢理查德! 这对我也有用,但只有当我从对话框中将 Sql server 模式属性切换为 true 时。简单地编辑数据源的代码是行不通的。 我应该在哪里设置连接字符串?!我已经在创建数据源时设置了它,它是这样的:“Dsn=fard-pc/iranianMall32;uid=;sql server mode=true”但没有任何改变!【参考方案2】:

对于最近遇到此问题的任何人,您可能还需要考虑两种方法

    在http://www.devart.com/dotconnect/mysql/ 使用 DevArt dotConnect 连接器。使用 .NET 数据源,您可以将 SSAS 多维数据集直接连接到 MySQL。 有些人通过为 DSV 连接到 SQL Server,然后使用与 MySQL 的链接服务器连接来与 MySQL 建立 OpenQuery 连接。其中一些细节在http://dennyglee.com/2012/09/26/sql-server-analysis-services-to-hive/ 中注明。

【讨论】:

【参考方案3】:

在将其添加到连接字符串时尝试使用 Caps:"....;Sql Server Mode=True"

【讨论】:

【参考方案4】:

尝试使用命名查询而不是表?

在 DSV 中创建一个新的命名查询,如 SELECT * FROM MySQLTable,然后在其之上构建 DSV。

【讨论】:

【参考方案5】:

我建议使用 SQL Server。尝试这样做可以为您节省大量时间和头痛。如果您的表不需要转换,只需使用 SSIS 将数据从 MySQL 移动到 SQL Server。

这是我们在我以前的雇主所做的 - OLTP 是 MySQL,我们在 SQL Server 中构建了仓库,然后使用该仓库的 SSAS 来构建多维数据集。

【讨论】:

【参考方案6】:

我曾在 Windows 7 机器上尝试使用 Visual Studio 2015 和 SQL Server Data Tools 2015,但遇到以下版本的问题:

网络连接器 7.0.4 网络连接器 7.0.3 网络连接器 7.0.2 网络连接器 6.9.8 网络连接器 6.9.7 网络连接器 6.9.6 网络连接器 6.9.5 网络连接器 6.9.4 网络连接器 6.9.3 网络连接器 6.9.2 网络连接器 6.9.1 网络连接器 6.9.0 网络连接器 6.3.5 从这里:https://downloads.mysql.com/archives/c-net/

结果:

SSIS 工作正常,但 SQL 构建器总是失败。 SSAS 无法正常工作,因为它无法检索数据库架构。

最后,下班后,我通过 以下安装 MYSQL 社区的新产品从这里 工作:http://dev.mysql.com/downloads/file/?id=466291

现在,我遇到的唯一问题是连接器由于架构映射而无法转换某些查询,因此将 sqlservermode=true 设置为连接字符串将 修复这个问题!

【讨论】:

以上是关于如何在 Microsoft SQL Server Analysis Services 中使用 MySQL 作为数据源?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Microsoft SQL Server 2017 上调试存储过程?

如何在 Microsoft PowerBI 中使用 SQL Server 存储过程?

如何在 Microsoft SQL Server Management Studio 2014 中更新表

如何将 sql server 链接到 Microsoft Access?

如何在 Microsoft SQL Server 中制作非数值表的数据透视表?

收藏Windows 如何安装Microsoft SQL Server 2000