VS 2013 中构建的 SSIS 包(v 12.0.31101)
DTSExec 在 SQL Server 2014 上运行
描述:从版本 8 到版本 6 的程序包迁移失败,错误为 0xC001700A“程序包中的版本号无效。版本号不能大于当前版本号。”。
当人们使用 SQL 2012 时,我看到很多关于上述内容的 google 结果,但我使用的是 2014 年,找不到任何支持。版本应该匹配(即都是包版本 8)
select @@version
Run Code Online (Sandbox Code Playgroud)
Microsoft SQL Server 2014 (RTM-CU14) (KB3158271) - 12.0.2569.0 (X64) 2016 年 5 月 27 日 15:06:08 版权所有 (c) Windows NT 6.3 上的 Microsoft Corporation Enterprise Edition(64 位)(内部版本 9600:)
附加信息 - 看起来它正在运行较旧的 DTSExec,可能来自现已删除的 sql 2012 实例。我将如何修复/重新指向 2014?
适用于 64 位的Microsoft (R) SQL Server 执行包实用程序版本11.0.2100.60 版权所有 (C) Microsoft Corporation。版权所有。
我曾经在一个非常大的组织工作,他们必须NOLOCK在大多数查询中使用- 因为数据通常在白天通过ETL进程更新,并且锁定应用程序40%的工作日当然不是一种选择.
出于习惯,在我的下一个地方,我继续自动使用NOLOCK到处.但是,自从阅读警告和风险以来,我一直在逐步撤消这一点,没有指定任何表提示,让SQL Server做到这一点.
但是,我仍然不舒服我正在做正确的事情.在我们使用的地方NOLOCK,我从来没有看到数据加倍,或数据损坏..我在那里已经很多年了.自从删除以来,NOLOCK我遇到了明显阻碍行阻塞的问题,这些障碍减缓/暂停了查询,从而产生了我的数据库缓慢或松散的错觉.实际上,只是有人在某处运行冗长的保存(他们这样做的能力是应用程序的要求).
我很想听听任何NOLOCK在实践中经历过数据损坏或数据重复的人,而不是那些在互联网上阅读过他们的人.如果有人能提供复制步骤来看到这种情况,我将特别感激.我试图衡量它的风险程度,风险是否超过能够运行与更新平行的报告的明显好处?
下面的示例 SQL - 基本上,如果我们使用“类别”而不是定义为类别(无引号)来运行此查询,则它可以正常工作。但是下面的失败有SQL compilation error: error line 1 at position 14 invalid identifier '"category"'.任何想法吗?
create or replace table monthly_sales(empid int, amount int, month text, "category" text)
as select * from values
(1, 10000, 'JAN', 'aaa'),
(1, 400, 'JAN', 'xxx'),
(2, 4500, 'JAN', 'aaa'),
(2, 35000, 'JAN', 'aaa'),
(1, 5000, 'FEB', 'bbb'),
(1, 3000, 'FEB', 'bbb'),
(2, 200, 'FEB', 'bbb'),
(2, 90500, 'FEB', 'aaa'),
(1, 6000, 'MAR', 'zzz'),
(1, 5000, 'MAR', 'aaa'),
(2, 2500, 'MAR', 'ttt'),
(2, 9500, …Run Code Online (Sandbox Code Playgroud)