从SQL数据库生成图形的选项有哪些?

时间:2013-04-18 17:38:09

标签: c# sql-server reporting sql-server-2012

我有一个SQL Server 2012数据库,我需要使用它来构建每日自动化报告。什么是创建图形的最佳解决方案?

我在考虑使用C#和Excel自动化所有内容,但我希望有更好/更简单的解决方案。

由于

7 个答案:

答案 0 :(得分:3)

我谦虚地推荐一个名为PowerShell Pipeworks的公司写的网络和数据框架(它是免费的,开源的和公共的域名)。这使您可以使用以下代码进行绘图:

Select-Sql -TableName DBTable | Out-Html -AsBarGraph

它还有一个cmdlet,Start-At,可以正常运行,所以你的脚本就像

Start-At -Time "9:00 AM" -Everyday -ScriptBlock { 
    Select-Sql -TableName DBTable -ConnectionStringOrSetting SqlConnectionSecretSetting | Select-Object @{Name='DisplayedProperty';Expression={$_.CalculatedValue} | Out-Html -AsBarGraph |New-WebPage -UseJQueryUI | Set-Content $pathToHtmlFile
}

答案 1 :(得分:1)

您可以从命令行使用sqlchart绘制任何sql查询图表。例如这会生成一个.png文件730x250:

sqlchart -D stockdb -P 1433 -servertype mssql -host localhost -e "select * from ohlc where sym='AMZN' AND (date > CURDATE()-60)" -o amazon-candlestick-dark.png --chart candlestick --height 250 --width 730 --theme dark 

sql stock chart

然后,您可以使用标准脚本语言将其附加到电子邮件中。在linux上发送电子邮件的说明是here

答案 2 :(得分:0)

您可以尝试使用C#从SQL获取数据,然后使用Create Excel (.XLS and .XLSX) file from C#中的库生成图形(我之前使用EPPlus作为图形)。这两个步骤都非常简单和标准。

答案 3 :(得分:0)

在SSRS中安装和设计报告 - 按计划发送电子邮件/存储它们。

Powershell也是一个选项,如果您需要有关PowerShell的更多详细信息,请与我们联系。

答案 4 :(得分:0)

如果您需要“包含电池”解决方案,可以尝试DBxtra,它可以从SQL Server和其他数据库创建报告,并使用“计划服务器”选项自动导出或发送它们。

答案 5 :(得分:0)

以下是powershell解决方案的详细信息:

  1. 你需要学习一点功能(你永远不会后悔所花费的时间)
  2. 安装Powershell v3.0
  3. 安装模块Invokesqlquery(这样可以轻松通信到sql,可以从http://powershell4sql.codeplex.com/下载)
  4. 查看http://blogs.technet.com/b/richard_macdonald/archive/2009/04/28/3231887.aspx了解图表

答案 6 :(得分:0)

尝试Grafana。您也可以将其链接到SQL数据库。 https://grafana.com/