【问题标题】:How to open a rpt file as a SQL Table?如何将 rpt 文件作为 SQL 表打开?
【发布时间】:2016-11-29 06:05:23
【问题描述】:

我有一个同事提供的 rpt 转储文件。我需要将此文件作为 SQL 表打开(我认为这是可能的,因为他从 SQL 表生成了 rpt 转储)。

我该怎么做。我正在使用 SQL Server Management Studio。我也可以在 SSMS 中将 rpt 文件作为单独的文件打开。

【问题讨论】:

  • 什么是rpt 转储,它的格式如何? rpt-tag 没有任何相关信息。

标签: sql-server ssms rpt


【解决方案1】:

虽然这个答案迟了,但我没有看到关于打开 .rpt 文件格式并将其写入 SQL 表的问题的规范答案。

  1. 在对象资源管理器的 SQL Server Management Studio 中,右键单击要加载文件的数据库,然后选择任务...导入数据。

  2. 选择平面文件源,选择您的文件,然后确保设置屏幕以匹配以下屏幕截图(代码页=65001 UTF-8,格式=右对齐,第一个数据行中的列名)。然后点击下一步。

  1. 单击每列的第一个字符(有关单击位置,请参见下面屏幕截图中的黄色突出显示)以在适当的位置插入列:

  1. 单击左侧的高级选项卡。遍历每个列名并删除列名末尾的空格。修复您认为合适的数据类型。警告由于“(NNN 影响的行)”文件页脚,前几列可能需要是字符串。

  1. 转到左侧的“预览”选项卡,将“要跳过的数据行”更改为 1,然后单击“刷新”:

  1. 单击“下一步”按钮并设置与 SQL 数据库的连接:

  1. 单击下一步并以[dbo].[MyTable] 格式输入表的名称,然后单击编辑映射并确认列数据类型匹配。此处的字符串 (DT_STR) 列应为 varchar 列。 Unicode 字符串 (DT_WSTR) 此处应为 nvarchar 列。

  2. 单击“下一步”和“完成”立即运行。您应该希望看到成功消息而不是错误:

  1. 有一个页脚显示“(受影响的 NNN 行)”(其中 NNN 是文件的行数)。查询目标 SQL 表以找到该行并将其删除。 select * from MyTable where MyColumn1 like '%(%' 可能会帮助您找到该行。请确认查询只返回一行,然后再删除。

【讨论】:

  • 对我不起作用,因为我无法选择 azure mfa 连接到数据库
【解决方案2】:

我能够在 Excel 中打开 RPT 文件,然后另存为 CSV

【讨论】:

  • 我需要将此文件作为 SQL 表打开,以便编写一些查询并从行中提取信息。否则,我将不得不使用 Python pandas 解析 Excel 文件,这将花费大量时间
猜你喜欢
  • 1970-01-01
  • 2014-05-02
  • 1970-01-01
  • 2014-01-06
  • 1970-01-01
  • 1970-01-01
  • 2015-06-22
  • 1970-01-01
  • 2011-10-09
相关资源
最近更新 更多