【问题标题】:Azure SQL Database SYNC column does not allow nulls warningAzure SQL 数据库同步列不允许空值警告
【发布时间】:2015-01-26 16:30:47
【问题描述】:

我设置了一个 Microsoft SQL 数据同步代理作业,以将我们的本地服务器同步到 Azure。它运行良好,然后我们在本地进行了一些更新,它没有从 Azure 中删除已删除的行,现在同步失败并出现警告:

Sync completed with warnings in 708.02 seconds. 
Upload:   4646 changes applied/155 failed   
Download: 680 changes applied/0 failedData Sync will stop synchronizing changes for this sync group member in -60 days if the failures are not resolved.    
Upload - errors for first 5 rows that failed to apply:Error #1: SqlException Error Code: -2146232060 - 
SqlError Number:515, Message: Cannot insert the value NULL into column 'ModelID', table 'dbo.ModelYears'; column does not allow nulls. INSERT fails. 
SqlError Number:3621, Message: The statement has been terminated. Error #2: SqlException Error Code: -2146232060 - 
SqlError Number:515, Message: Cannot insert the value NULL into column 'ModelID', table 'dbo.ModelYears'; column does not allow nulls. INSERT fails. 
SqlError Number:3621, Message: The statement has been terminated. Error #3: SqlException Error Code: -2146232060 - 
SqlError Number:515, Message: Cannot insert the value NULL into column 'ModelID', table 'dbo.ModelYears'; column does not allow nulls. INSERT fails. 
SqlError Number:3621, Message: The statement has been terminated. Error #4: SqlException Error Code: -2146232060 - 
SqlError Number:515, Message: Cannot insert the value NULL into column 'ModelID', table 'dbo.ModelYears'; column does not allow nulls. INSERT fails. 
SqlError Number:3621, Message: The statement has been terminated. Error #5: SqlException Error Code: -2146232060 - 
SqlError Number:515, Message: Cannot insert the value NULL into column 'ModelID', table 'dbo.ModelYears'; column does not allow nulls. INSERT fails. 
SqlError Number:3621, Message: The statement has been terminated.     
For more information, provide tracing ID ‘92002a08-b374-4579-b58c-a5164e820767’ to customer support.

ModelID 列不允许在任一表上使用空值,因此我不确定是什么导致了错误。

我按照一个论坛的建议在 Azure 上截断了 ModelYears_dss_tracking 和 ModelYears,它确实重新填充了表格,但它仍然发出警告。

【问题讨论】:

  • 您在设置同步后添加了 ModelID 列吗?

标签: sql-server azure azure-data-sync


【解决方案1】:

能否请您确认一下您是否更改了此表的PK?

消除错误的快速方法是 1) 删除同步组 2)删除中心和成员上模式“DataSync”下的所有表和SP 3)删除触发器包含单词'dss' 4) 再次创建同步组

问候, 加里

【讨论】:

  • 你知道,我想这就是我最终修复它的方式,但那是很久以前的事了,我忘了问这个问题......谢谢你的回答,把这个带回我的记忆
  • 对这里感兴趣的任何人都可以使用脚本link 来实现第 2 点和第 3 点(删除由 DataSync 创建的所有表、sp 和触发器)
猜你喜欢
  • 2011-07-14
  • 1970-01-01
  • 2019-10-12
  • 1970-01-01
  • 1970-01-01
  • 2021-09-08
  • 2010-10-05
  • 1970-01-01
  • 2014-02-12
相关资源
最近更新 更多