sql-server – SQL Server Management Studio:导入静默忽略99.9%的数据

前端之家收集整理的这篇文章主要介绍了sql-server – SQL Server Management Studio:导入静默忽略99.9%的数据前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
问题

我试图使用sql Server Management Studio的导入数据任务将数据导入到表中.原来的49,325只有26排. (编辑:99.9%来自:(1-26 / 49325)* 100 = 99.9%

在企业管理器中使用DTS正确地输入了49,325行.

为什么SSMS不能导入所有的行,报告它成功转移了49,325,没有发生错误?为什么企业管理员能够正确导入所有49,325行?

Microsoft sql Server Management Studio版本:10.0.1600.22(从sql Server 2008,今天安装在新的Windows 7计算机上,SP1已应用)

证明 – 使用SSMS导入

STRTransactions表最初为空:

Source是锂上的ContosoFrobManager数据库

目的地是锂的Grob数据库;

我想从一个(或多个)表复制数据:

我想复制STRTransactions表:

你可以附加到现有的表,没关系(它是空的).我想启用身份插入.并且不要尝试导入时间戳(因为你只是抱怨):

立即行动,没关系

嗯,你要做的事情:

我设法抓住它,当它转移49,325行,围绕1k标记

全做完了.所有49,325行成功复制:

这是报告:

The execution was successful

  • Initializing Data Flow Task (Success)

  • Initializing Connections (Success)

  • Setting sql Command (Success)

  • Setting Source Connection (Success)

  • Setting Destination Connection (Success)

  • Validating (Success) Messages Warning 0x80049304: Data Flow Task 1:
    Warning: Could not open global shared
    memory to communicate with performance
    DLL; data flow performance counters
    are not available. To resolve,run
    this package as an administrator,or
    on the system’s console. (sql Server
    Import and Export Wizard) Warning
    0x80047076: Data Flow Task 1: The
    output column “timestamp” (158) on
    output “OLE DB Source Output” (11) and
    component “Source – STRTransactions”
    (1) is not subsequently used in the
    Data Flow task. Removing this unused
    output column can increase Data Flow
    task performance. (sql Server Import
    and Export Wizard)

  • Prepare for Execute (Success)

  • Pre-execute (Success)

  • Executing (Success)

  • Copying to [dbo].[STRTransactions] (Success) 49325 rows transferred

Messages Information 0x402090df: Data
Flow Task 1: The final commit for the
data insertion in “component
“Destination – STRTransactions” (163)”
has started. (sql Server Import and
Export Wizard) Information
0x402090e0: Data Flow Task 1: The
final commit for the data insertion
in “component “Destination –
STRTransactions” (163)” has ended.
(sql Server Import and Export Wizard)

  • Post-execute (Success) Messages Information 0x4004300b: Data Flow Task
    1: “component “Destination –
    STRTransactions” (163)” wrote 49325
    rows. (sql Server Import and Export
    Wizard)

优秀.全做完了. “写了49325行”.

除了它只写了26行:

显然我并不疯狂我做了一切正确即使我没有,SSMS也没有显示出任何问题.我重复了同样的步骤8次:

> 5次为自己
>两次向两位同事展示
>一次截图为这个SO问题的过程

每次都是26行,没有更多,也不少.但是哪个被毁了,主人还是爷爷?

但是为了证明我没有做错什么,我们再试一次企业经理.十年前撰写的优秀工具:

证明 – 使用企业管理器导入

我从STRTransactions表中删除了26行.我可以提供一个截图,我从一个空的表开始;或者你可以相信我这个.而且由于向导几乎相同,您将看到几乎相同的截图.对于那个很抱歉;但没有人会相信我没有证据.

我想从ContosoFrobManager数据库中导出锂:

我想导入到锂电池的Grob数据库

我想复制表格:

我想复制STR Transactions表:

您可以继续添加行到现有的表(它仍然是空的).我希望你插入身份值.并且不要尝试插入时间戳值,反正你会抛出一个错误

现在运行,确定:

嗯,你要做的事情:

我设法抓住它在进口的中间,大约12k行:

全部完成,成功复制了49,325行:

我们从表中选择查看行:

为什么SSMS已经积极开发了6年的工具,现在还没有得到正确的解决?虽然企业管理员最初的开发团队几乎没有bug?这是SSMS中关键错误的另一个例子.最后一个关键的bug我发现was that it does not script all objects.

我们可以让企业经理开发团队重写SSMS吗?

可以说,我会看到的唯一答案是

>使用不同的工具
你有没有在Microsoft Connect上报告?
>调用PSS

当然我有一个解决方法,停止使用sql Server Management Studio.但是我已经在XP模式下运行企业管理器32位兼容性(正如你在Aero主题桌面上的Luna主题窗口所看到的)

我:我得到了工作
同事:怎么样?
我:我使用企业管理器
同事:嘲笑吧
同事:我可能需要安装.

编辑:在ServerFault上阅读我的旧问题,关于SSMS静默地不会在数据库中编写一些表,所以我终于结束了,如果你讨厌SSMS,那么Honk.所以:

哼,如果你讨厌SSMS.

游戏

我创建了一个ticket on Microsoft Connect.当这个问题将被关闭,不可重现时,你的赌注.编辑这个问题,添加你的名字和日期.最近没有过去的人将赢得100代表! (我会捐赠我的代表)如果你没有足够的代表来编辑问题,把你的猜测放在一个评论中,我会添加它.

猜猜

> Ian Boyd:5/1/2011

更新:于2011年3月18日关闭.关43天.

解决方法

答案:

>拿枪
跟踪负责人和…
>只是开玩笑但有人需要站起来对自己的垃圾负责,不是吗?我们不会真的拍摄他们,但是我们不希望有时候我们可以与人或团队面对面,并要求他们回答为什么他们做这样糟糕的工作?

我同意在最新的微软产品中有一些真正的垃圾.在SSRS中,当您点击现有文本中间的文本框并点击粘贴时,粘贴操作后,光标位于所有文本的末尾,而不是粘贴文本的末尾(在中间). SSRS和SSIS只是这样的各种废话.

猜你在找的MsSQL相关文章