如何将 rpt 文件作为 SQL 表打开?

Spi*_*Man 1 sql-server ssms rpt

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

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

Gre*_*way 8

尽管这个答案很晚,但我没有看到有关打开 .rpt 文件格式并将其写入 SQL 表的问题的规范答案。

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

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

设置 Flat File Source 和 Ragged right

  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 '%(%'可能会帮助您找到该行。请在删除之前确认查询仅返回一行。