sql2000 drop table 表 执行20分钟 都没执行完
sql2000
abc 表中有7万条数据
执行 select * from abc 时 也是执行好久都没有反应
select * from abc where 日期='2014-01-02' 没反应
执行 dbcc checktable('abc') 显示正常 数据有7万左右条数据 在300页中
没有
后来 将表结构 复制出来
执行 drop table abc 执行了20多分钟了还是没反应
表 abc 没有索引 没有 触发器
这是为什么呢,数据库别的表没有问题 就这个abc表 有情况
------解决方案--------------------有可能是有锁把。
你试试这样能查询数据吗:
select * from abc with(nolock)
------解决方案--------------------select * from sys.sysprocesses where blocked<>0看看有没有阻塞,特别是那个spid
------解决方案--------------------查询阻塞进程:
select * from sys.sysprocesses with(nolock) where blocked<>0
查询锁死表:
CREATE TABLE Test
(
TID INT IDENTITY(1,1)
)
SELECT request_session_id spid,OBJECT_NAME(resource_associated_entity_id)tableName
FROM sys.dm_tran_locks
WHERE resource_type='OBJECT '
用于分析查询耗时,执行时间:
set statistics io on
select * from stuinfo--执行语句
set statistics io off
SET STATISTICS PROFILE ON:显示分析、编译和执行查询所需的时间(以毫秒为单位)。
SET STATISTICS IO ON:报告与语句内引用的每个表的扫描数、逻辑读取数(在高速缓存中访问的页数)和物理读取数(访问磁盘的次数)有关的信息。
SET STATISTICS TIME ON:显示每个查询执行后的结果集,代表查询执行的配置文件。