【问题标题】:Tableau does not get data by connecting to SQL Server stored procedure?Tableau 不通过连接 SQL Server 存储过程获取数据?
【发布时间】:2018-07-25 06:37:40
【问题描述】:
我正在使用Tableau 10.3 连接到 SQL Server (2012) 数据库中的存储过程 (SP)。当我将一张表拖到数据课程画布上时,Tableau 可以连接到数据库中的任何常规表。
但是,当我将 SP 拖到数据源画布上时,Tableau 不会从该 SP 获取任何数据。 SP 如下所示(用于测试目的):
ALTER proc [dbo].[Tableau_testOnTableRptCat]
as
begin
select * from ReportCategories
end
我是新来的,很抱歉问技术问题可能会错过任何事情。
【问题讨论】:
标签:
sql-server
database
stored-procedures
tableau-api
【解决方案1】:
您是否查看了下面粘贴的 SQL Server SP 约束并在此 page 上找到?不确定您的情况是否合适,但这是一个开始。
SQL Server 数据库的存储过程约束
以下约束适用于 SQL Server >数据库上的存储过程。
如果存储过程的结果集包含类型为 IMAGE >或 TEXT 的列,则存储过程将失败并显示“语法错误”错误 >消息。
如果结果集的总宽度(每行字节数)>超过 8060,则存储过程失败。这可能发生在非常宽的 >表格(数百列)或具有大文本列的表格中,>旨在容纳数千个字符的文本。
Tableau 不显示架构“sys”中的存储过程。
如果用户没有为 > 过程所需的一个或多个参数提供值,Tableau 将显示 SQL Server 数据库错误,形式为 >“过程需要参数 @x 的值,但未提供一个值。”
包含多个查询的存储过程应遵循 > 存储过程注释(上文)中列出的指南。
Tableau Desktop 不支持 Microsoft SQL Server TIME 数据>类型。当此类型的字段包含在 >Microsoft SQL Server 数据库上的存储过程中时,Tableau Desktop 将不会导入它们。