안녕하세요. 질문이 있어서 이렇게 글을 남깁니다.

 

특정시간대에 8시~10시 사이에 매일매일 걸리는 LOCK 이있는데

 

프로시저 상에는 오류가 없고

 

이력 남기는용도로 쓰고 잇는 프로시저로 스캐쥴돌아 확인하는데..

 

남기는용도 프로시저는 다음과 같습니다.

 

CREATE PROCEDURE  [dbo].[Z_BLOCK_CHECK]  
as

set nocount on

create table #tbl(
 SPID int,
 dbid varchar(255),
 objid varchar(255),
 indID varchar(255),
 Type varchar(255),
 Resource varchar(255),
 Mode varchar(255),
 Status varchar(255)
 
)

declare @objid varchar(255)
DECLARE @SPID VARCHAR(255)
declare @obj_sp_name varchar(max)
declare @block_table varchar(255)

select @objid = null
select @obj_sp_name = null;

insert into #tbl(SPID,dbid,objid,indID,Type,Resource,Mode,Status)
exec sp_lock

delete from #tbl where  Type<>'TAB' or objid < 0 or Mode not in ('X','IX')


insert into ZTB_LOCK(SPID, dbid, objid, insDate, cnt)
select SPID, dbid, objid, getdate(), 0 from #tbl

delete from ZTB_LOCK where SPID+dbid+objid not in (
 select SPID+dbid+objid from #tbl

) and  convert(char(8), insDate, 112) =  convert(char(8), getdate(), 112)

select top 1 @objid = objid,@SPID = SPID from ZTB_LOCK where convert(char(8), insDate, 112) =  convert(char(8), getdate(), 112)
group by SPID, dbid, objid having count(*) > 5


 IF isnull(@objid, '') <> ''
 begin
  if cast(replace(convert(varchar,getdate(),8),':','') as int) between 080000 and 220000
  begin
   
     select @block_table = name from sysobjects  where  id = @objid
     set @obj_sp_name = (select qt.text from master.dbo.sysprocesses sprc CROSS APPLY sys.dm_exec_sql_text(sprc.sql_handle) as qt where sprc.spid = convert (smallint, @SPID))
     
      insert into TBL_BLOCK_SMS(BLOCK_SQL, CREATE_DTTM,SP_NAME) values (@block_table, GETDATE(),@obj_sp_name)
   
  end


drop table #tbl;
 
end
-- Z_SP_TABLE_LOCK 원래 블럭체크

 

이거인데

 

sysrscols, syscolpars

 

이 시스템 테이블이 락이 걸립니다..

 

아래 DB CHECK 도 넣었습니다.

 

무엇이 문제일까요?ㅠㅠㅠ 그리고 이 테이블이 무슨 역활을 하나요? 이력관리인가요?

No. Subject Author Date Views
Notice SQL강좌: 챗GPT와 함께 배우는 SQL Server 무료 강좌 목차와 소개 (2023년 9월 업데이트) 코난(김대우) 2023.08.18 34967
Notice Python 무료 강좌 - 기초, 중급, 머신러닝(2023년 6월 업데이트) 코난(김대우) 2021.01.01 17247
» sysrscols, syscolpars block lock이 왜 걸릴까요? nang86 2018.08.22 775
10302 SQL Server 2000 복구가 안되어 문의드립니다. 블랙21 2018.08.21 810
10301 data 가공에 대해 질문드립니다.. nozae 2018.08.21 733
10300 [긴급]update 쿼리문 질문입니다 [1] 바자다가사 2018.08.21 850
10299 DB를 close하지 않고 계속 써도될까요? [2] 딧물 2018.08.16 881
10298 유지관리계획 스케쥴 오류 문의 [1] 아틀레틱 2018.08.16 1915
10297 흔히 DB에서 말하는 분산처리가 무슨 의미인지 궁금합니다! sincie 2018.08.14 747
10296 입출금 내역 쿼리작성할 때 조인 질문 [3] 안돼요 2018.08.13 1329
10295 원화표시가 '\' 저장이안되요 문상연 2018.08.11 977
10294 재질문 - 최근 댓글 표현에 관해서...? [6] 문상연 2018.08.10 927
10293 프로시저 실행 및 오류 로그 [1] HoyaSoft 2018.08.10 1037
10292 가장최근의 쪽지내용을 표시하고싶습니다 [2] 문상연 2018.08.09 714
10291 쿼리 문의입니다. [1] 얼음왕자 2018.08.07 711
10290 멀티 검색관련 [1] 냥냥 2018.08.04 644
10289 랭킹 프로시저 수정이 필요합니다 도와주세요. 배쉥 2018.08.01 750
10288 쿼리문 질문 합니다 PIVOT 관련 백마탄나 2018.07.31 795
10287 Temp DB 생성 [3] 2년째걸음마 2018.07.31 919
10286 Sql 서버생성 및 복사여부 2년째걸음마 2018.07.31 624
10285 기존서버 sqlserver2000 에 2008 설치 방법 부탁 드립니다 [1] 슈토파이터 2018.07.30 696
10284 데이타베이스 접속시 에러질문입니다. 희망나라 2018.07.28 752





XE Login