一天一夜没睡觉了,急死了!!!ORACLE数据库中有两个表不能插入数据,查询的时候需要几个小时,怎么办?经过检测,表也没有被锁!
我是把D1数据库中的20个表的数据导入到D2中相应的20个表,别的18个表都能顺利导入(查询等操作都能正常使用),可是只有两个表a,b无法导入,现在用:
select count(*) from a 或select count(*) from b,都需要几个小时才能查询完成,并且出来的结果是0.怎么回事啊????
我导数据的时候是用的存储过程:
先删除D2中表的所有数据,
然后selectD1中表的数据,
最后insert D2的表中10000条记录的数据,一个存储过程执行了一夜还是没反应,还是在那"正在执行......"
怎么办啊?用工具看了看,也没有见这两个表被锁.
我是把D1数据库中的20个表的数据导入到D2中相应的20个表,别的18个表都能顺利导入(查询等操作都能正常使用),可是只有两个表a,b无法导入,现在用:
select count(*) from a 或select count(*) from b,都需要几个小时才能查询完成,并且出来的结果是0.怎么回事啊????
我导数据的时候是用的存储过程:
先删除D2中表的所有数据,
然后selectD1中表的数据,
最后insert D2的表中10000条记录的数据,一个存储过程执行了一夜还是没反应,还是在那"正在执行......"
怎么办啊?用工具看了看,也没有见这两个表被锁.
我想先把a,b这两个表删掉,再从新建,可删除的时候提示"资源正忙,没有指定NOWAIT"
我想先把a,b这两个表删掉,再从新建,可删除的时候提示"资源正忙,没有指定NOWAIT"
DECODE (m.lmode,
0, 'None',
1, 'Null',
2, 'Row Share',
3, 'Row Excl.',
4, 'Share',
5, 'S/Row Excl.',
6, 'Exclusive',
lmode, LTRIM (TO_CHAR (lmode, '990'))
) lmode,
DECODE (m.request,
0, 'None',
1, 'Null',
2, 'Row Share',
3, 'Row Excl.',
4, 'Share',
5, 'S/Row Excl.',
6, 'Exclusive',
request, LTRIM (TO_CHAR (m.request, '990'))
) request,
m.id1, m.id2
FROM v$session sn, v$lock m
WHERE (sn.SID = m.SID AND m.request != 0) --存在锁请求,即被阻塞
OR ( sn.SID = m.SID --不存在锁请求,但是锁定的对象被其他会话请求锁定
AND m.request = 0
AND lmode != 4
AND (id1, id2) IN (
SELECT s.id1, s.id2
FROM v$lock s
WHERE request != 0 AND s.id1 = m.id1
AND s.id2 = m.id2)
)
ORDER BY id1, id2, m.request;
到底正忙办啊???????
我曾经有过跟你相似的经历,就是表的记录中,有半个汉字的情况,结果是所有的操作都非常非常慢,后事只有把表drop了再重建,然后把有半个汉字的记录删除了,再导入就没有问题了。