Azure sql db中使用insert时出现严重错误

Azure sql db中使用insert时出现严重错误,azure,tsql,azure-sql-database,Azure,Tsql,Azure Sql Database,我在Azure sql db上执行insert语句时遇到严重错误。所以我无法检查SQL Server日志。直到上周我才发现这个错误,所以我从那时起就恢复了数据库,但运气不好。有人知道如何看到确切的错误吗 完全错误: 当前命令出现严重错误。如果有结果,则应丢弃。 插入[Staging].[table]([att1],[att2]) 从[暂存].[vw_表]中选择[att1],[att2]” 可能的失败原因:查询\“ResultSet”存在问题\属性未正确设置、参数未正确设置或连接未正确建立。您应该

我在Azure sql db上执行insert语句时遇到严重错误。所以我无法检查SQL Server日志。直到上周我才发现这个错误,所以我从那时起就恢复了数据库,但运气不好。有人知道如何看到确切的错误吗

完全错误:
当前命令出现严重错误。如果有结果,则应丢弃。

插入[Staging].[table]([att1],[att2])
从[暂存].[vw_表]中选择[att1],[att2]”


可能的失败原因:查询\“ResultSet”存在问题\属性未正确设置、参数未正确设置或连接未正确建立。

您应该得到错误消息通常附带的错误号40540,对于此错误,建议按照文档中的说明执行重试逻辑

似乎您正在使用Azure SQL数据库来执行ETL工作负载,通常与数据仓库的暂存区域相关,并且当使用较低层进行ETL和高I/O使用率时,Azure SQL数据库服务可能会受到限制。请运行以下查询,让我们尝试查找有关Azure SQL数据库被限制的证据

SELECT *
FROM sys.dm_db_resource_stats
ORDER BY end_time DESC;
如果您看到avg_log_write_percent接近或等于100%,则需要放大数据库层。在运行使用高级存储的ETL进程之前,您可以考虑扩展到高级层。ETL过程完成后,按比例缩小

门户上的DTU图形如何?出现错误时,请验证资源消耗是否达到限制


控制节流和高DTU使用率的一种方法是使用所解释的批执行插入。

Microsoft为感兴趣的任何人回复:

请在下面找到我们的调查结果

  • 我们注意到LOG%经常达到100%,这可能 导致您看到的错误
  • 标准性能层数据库的IO比高级版少 性能层数据库
  • 由于此工作负载正在达到最大日志 标准S3/S4的费率,建议使用高级。我会的 建议尝试P1/P2服务层并与我们共享结果

正如前面在评论中所说,当我将SSIS中的加载从并行改为顺序加载时,错误也消失了。

连接到Master,您可以尝试从sys运行
select*from.event\u log
感谢您的回复,我已经做了大量的测试,事实上,扩展数据库是有效的。但不是每次。实际上,这个技巧是设置顺序加载而不是并行加载,即在SSIS中,我现在一个表一个表地加载,而不是一次加载4个表。奇怪的是,资源统计数据显示数据库上没有真正的过载。我已经向微软申请了一张支持票。