用友股份-LE服务支持部产品方案--《NC502升级56总账报错-违反唯一约束解决方法》建立日期:2013-01-01修改日期:xxxx-xx-xx文档属性:客户文控编号:LE-DY-CP-2013-00352/8文档控制创建记录审阅人姓名所属部门职位审阅签字发布人姓名所属部门发布时间日期作者所属部门邮件地址版本2013-01-01V1.03/8目录502升级56总账报错-违反唯一约束解决方法..................................................................44/8502升级56总账报错-违反唯一约束解决方法--在升级报错后依次执行下面的脚本,然后再升级。--第一步:创建备份表CREATETABLEGL_FIXTMPFREEVALUE_TMPasselect*fromGL_FIXTMPFREEVALUE;--给备份表插入数据insertintoGL_FIXTMPFREEVALUE_TMP(ASSID,checkcount,DEF1,code1,DEF2,code2,DEF3,code3,DEF4,code4,DEF5,code5,DEF6,5/8code6,DEF7,code7,DEF8,code8,DEF9,code9,DEF10,code10,DEF11,code11,DEF12,code12,DEF13,code13,DEF14,code14,DEF15,code15,DEF16,code16,DEF17,code17,6/8DEF18,code18,DEF19,code19,DEF20,code20)selectdistinctfreevalueidassid,checkcount,'NN/A'DEF1,'NN/A'code1,'NN/A'DEF2,'NN/A'code2,'NN/A'DEF3,'NN/A'code3,'NN/A'DEF4,'NN/A'code4,'NN/A'DEF5,'NN/A'code5,'NN/A'DEF6,'NN/A'code6,'NN/A'DEF7,'NN/A'code7,'NN/A'DEF8,7/8'NN/A'code8,'NN/A'DEF9,'NN/A'code9,'NN/A'DEF10,'NN/A'code10,'NN/A'DEF11,'NN/A'code11,'NN/A'DEF12,'NN/A'code12,'NN/A'DEF13,'NN/A'code13,'NN/A'DEF14,'NN/A'code14,'NN/A'DEF15,'NN/A'code15,'NN/A'DEF16,'NN/A'code16,'NN/A'DEF17,'NN/A'code17,'NN/A'DEF18,'NN/A'code18,'NN/A'DEF19,'NN/A'code19,8/8'NN/A'DEF20,'NN/A'code20fromgl_freevalue;--创建备份表createtablegl_freevalue_tmpasselect*fromgl_freevaluefwheref.freevalueidin(selectt.assidfromGL_FIXTMPFREEVALUE_TMPtgroupbyt.assidhavingcount(*)>1)--第二步:更新错误数据updategl_freevaluefsetf.checkcount=(selectcount(f1.freevalueid)fromgl_freevaluef1wheref1.freevalueid=f.freevalueid)wheref.pk_freevaluein(selecttf.pk_freevaluefromgl_freevalue_tmptf)做完以上步骤后,继续升级即可。