【问题标题】:Program that uploads local file to SQL Server将本地文件上传到 SQL Server 的程序
【发布时间】:2018-06-09 07:13:11
【问题描述】:

我有一个巨大的 .csv 文件需要上传到 SQL Server,以便我可以直接在 Microsoft Power BI 中访问数据。

我正在尝试创建一个程序,该程序在运行时会自动将指定的文件放到服务器上,以便文件保持更新。

解决这个问题的正确方法是什么?

我不习惯 Visual Studio 和 C#,但尝试了类似以下的方法但没有成功,因为我不知道如何指定我创建的 SQL Server 数据库:

public static void databaseFilePut(string varFilePath) 
{
    byte[] file;

    using (var stream = new FileStream(varFilePath, FileMode.Open, FileAccess.Read)) 
    using (var reader = new BinaryReader(stream)) 
    {
        file = reader.ReadBytes((int) stream.Length);       
    }          

    using (var varConnection = Locale.sqlConnectOneTime(Locale.sqlDataConnectionDetails))
    using (var sqlWrite = new SqlCommand("INSERT INTO Raporty (RaportPlik) Values(@File)", varConnection)) 
    {
        sqlWrite.Parameters.Add("@File", SqlDbType.VarBinary, file.Length).Value = file;
        sqlWrite.ExecuteNonQuery();
    }
}

我真的很感激任何帮助,因为我已经被困了一段时间了!

非常感谢

【问题讨论】:

  • 为什么要加载到 SQL Server 中? PowerBI 可以直接使用 .CSV 文件
  • 我知道,但我想使用 Power BI 服务,据我所知,如果本地文件发生更改,您必须将文件重新上传到 BI 服务以更新数据。还是我错了?
  • 要更新数据,在任何情况下都必须重新加载 Power BI 模型 - 无论它是存储在 SQL 服务器还是本地文件中。此要求的唯一例外是直接查询模式,但它有很多缺点,很难证明其使用的合理性(除非您有数十亿条记录)。使用 SQL Server 而不是直接导入的唯一其他原因是您计划执行复杂的数据转换和验证。 SQLS 在这方面比 Power Query(Power BI 用于处理数据导入的工具)更好。
  • 我同意@RADO - 关于数据转换的一点。 Power Query(Power BI 中的查询编辑器)比 SQL(或 SSIS)更容易学习和使用,也更灵活。
  • 如果您的“巨大 .csv 文件”存储在云存储服务(例如 OneDrive)中,则 Power BI Web 服务的数据集刷新可以直接从那里读取它,并针对它运行转换 Power Queries。然后只有数据从云存储服务移动到 Power BI Web 服务数据集。

标签: c# sql sql-server visual-studio


【解决方案1】:

导入工作应通过 SSIS(Sql Serve 集成服务)完成。 Power BI 可以完成这项工作,但考虑到其他 500MB,您应该考虑使用 SSIS 等企业级软件。

然后,一旦您获得了数据库中的所有数据,您应该在 SSAS(SQL Server 分析服务)上构建模型,然后通过实时连接连接 Power BI 以生成报告。这种方案的优点是所有数据都在服务器上,所以不需要刷新数据。

如果您希望 SSISPower query 的企业级,而 SSAS 是用于建模数据的企业级。

如果您熟悉 Power BI 中的数据建模并使用 DAX,那么处理 SSAS 不会有太大问题,相反 SSIS 与 Power BI 的导入工具(又名 Power 查询)有很大不同。为 Visual Studio 安装数据工具,这是与 SSIS 和 SSAS 一起工作的必要条件。

希望对您有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-09
    • 2022-10-14
    相关资源
    最近更新 更多