• 8916阅读
  • 2回复

Primary Key约束在对象UACCESS中出现冲突,导致用户不能登录PM,不能打开项目 [复制链接]

上一主题 下一主题
 

只看楼主 倒序阅读 0楼 发表于: 2008-02-26
Primary Key约束在对象UACCESS中出现冲突 /$j,p E=  
1 用户登录时出现问题,如图: +#6f)H(P]  
Sb`SJ):x  
Bf Q#5  
  qKs"L^b  
sr H.$Y;~  
[!4V_yOb  
tD]vx`0>  
jI WX6  
+B4i,]lCx  
2 打开项目时,出现“一个项目多于一个最高WBS”的提示; y4Nam87;/?  
m [BV{25  
3 数据库升级之后,用户不能正常登录; ngzQVaB9  
MF +F8h>/  
4 出现“Key violation. Violation of primary key constraint 'Pk_UAccess' _;:B@Z  
EDBEnginError KVVCP-1971-2 Key Violation ”的提示。 S~GS:E#  
'N/u< `)  
解决方案: \$,8aRT>#U  
9dp1NjOtAc  
vh^?M#\  
1、  解决这个问题,要求对数据库进行一定地修复,所以,请先对数据库PMDB进行备份。 _"82W^Wi  
m2Wi "X(I_  
2、  连接数据库: dRBWJ/ 1T  
如果是MS SQL Server请以privuser用户登录MS SQL Server的查询分析器 |43Oc:Ah+  
如果是Oracle请以admuser用户登录Oracle的SQLPlus,或者其他类似的工具 VRUA< x  
如果是Interbase请以sysdba登录ISQL MkM`)g 5  
n^/)T3mz{  
3、  执行下面语句 _hEr,IX=J  
select  proj_id, proj_node_flag from projwbs where proj_node_flag = 'Y' group by proj_id, proj_node_flag having count(1) > 1 5PE}3he:  
本例中反馈结果为 ubl)$jZ:Q  
524 Y <,Jx3y q  
"fu@2y4^  
4、  执行下面语句 i.e4<|{  
select wbs_id, proj_node_flag from projwbs where proj_id = '524’  //524是上一条语句查询反馈的结果 seZb;0  
本例中反馈结果为 "MyMByomQ  
wbs_id  proj_node_flag Uf~5Fc1d =  
17340    Y |q Pu*vR  
17350    N "1rT> ASWI  
17351    N Cw~fP[5XMF  
17352    N ^O&&QRH~w  
17353    N 8*&YQId~  
17354    N WLCr~r^  
17355    N STz@^A  
17356    N 6ck%M#v  
17357    N </W"e!?X  
17443    Y &5hs W1`  
#j"GS/y"  
5、选择上述语句中反馈中最大值,本例中最大值为17443 Y。运行下列语句更新,  Au*1-  
update projwbs set proj_node_flag = 'N' where wbs_id ='17340'  //17340是上一条语句查询反馈结果中WBS_id最大值。 -cP1,>Ahv  
执行完了结果应该为: N\Ab0mDOV.  
(所影响的行数为 1 行) KIY9?B=+  
(所影响的行数为 1 行) t"YN:y8-  
vILgM\or  
6、关闭SQL工具; q&^H" fF  
3=%G{L16-  
7、重新登录PM。  w7 f)v\p  
论坛十六周年庆!

只看该作者 1楼 发表于: 2008-02-26
牛!直接操作数据库,对这点我是不敢轻举妄动的.
提供全国各个行业的定额资源库(含定额子目及人材机),为企业定制资源库,代写各类资源库.欢迎联系!

只看该作者 2楼 发表于: 2008-03-13
你牛,说实话,内容我还没有看懂 Zt 1nH  
数据库没有研究过
快速回复
限1000 字节
 
上一个 下一个