Primary Key约束在对象UACCESS中出现冲突
lh(A=hn"n 1 用户登录时出现问题,如图:
{1#5\t>9yD shYcfLJ C3G?dZKv
2 P7 (&*=V $O%lYQY] -x:Wp*, yJ/m21f E@0wt^ P-7!\[];te 2 打开项目时,出现“一个项目多于一个最高WBS”的提示;
zc*qmb 9P{5bG0o8 3 数据库升级之后,用户不能正常登录;
O<L/m[] p%xo@v( 4 出现“Key violation. Violation of primary key constraint 'Pk_UAccess'
D7sw;{ns EDBEnginError KVVCP-1971-2 Key Violation ”的提示。
u32wS$*8 : b $
M 解决方案:
:2 QA
# 0b?9LFd E+JGqk 1、 解决这个问题,要求对数据库进行一定地修复,所以,请先对数据库PMDB进行备份。
HR['y9U PM
[6U# 2、 连接数据库:
riFE.; 如果是MS SQL Server请以privuser用户登录MS SQL Server的查询分析器
~AjbF(Ad 如果是Oracle请以admuser用户登录Oracle的SQLPlus,或者其他类似的工具
dWI/X 如果是Interbase请以sysdba登录ISQL
""d3ownKhw a9FlzR 3、 执行下面语句
|Ro\2uSr select proj_id, proj_node_flag from projwbs where proj_node_flag = 'Y' group by proj_id, proj_node_flag having count(1) > 1
7:jSP$ 本例中反馈结果为
o"7,CQye 524 Y
by>,h4 6&.[:IHw 4、 执行下面语句
Qy0bp;V/ select wbs_id, proj_node_flag from projwbs where proj_id = '524’ //524是上一条语句查询反馈的结果
~4XJ" d3L 本例中反馈结果为
H# 2'\0u wbs_id proj_node_flag
J\m7U
17340 Y
nzhQ\'TC 17350 N
FZjtQ{M 17351 N
0Zk A.p 17352 N
T(J&v|FK 17353 N
Tg{d
#U_qB 17354 N
8Ln:y'K 17355 N
"=P@x|I 17356 N
{ F.Ihw 17357 N
Kc{fT^E 17443 Y
)JeiTh^ (Pvch! 5、选择上述语句中反馈中最大值,本例中最大值为17443 Y。运行下列语句更新,
oE-i`;\8 update projwbs set proj_node_flag = 'N' where wbs_id ='17340' //17340是上一条语句查询反馈结果中WBS_id最大值。
42Kzdo|} 执行完了结果应该为:
sI9~TZ : (所影响的行数为 1 行)
*(D_g!a (所影响的行数为 1 行)
<Ni]\-* Mtt
VgNV 6、关闭SQL工具;
K
V 4>( QVzLf+R~ 7、重新登录PM。
uysGOyi<u