[mssql] 데드락 확인 쿼리 SELECT session_id , blocking_session_id, wait_time, wait_type, last_wait_type, wait_resource, transaction_isolation_level, lock_timeout FROM sys .dm_exec_requests WHERE blocking_session_id 0 Blocking_session_id : 블록킹세션의 SPID Wait_type : 대기의종류 Wait_time : 대기시간( 밀리초) Last_wait_type : 마지막대기타입 Wait_resource : 요청을기다리는자원 Transaction_isolation_level : 트랜잭션격리수준 Lock_timeout : 잠금제한시간
MS-SQL 데이터형 변환하여 오늘 23시 59분 59초로 보여주기 SELECT CONVERT(NVARCHAR(10), GETDATE(), 120) + ' 23:59:59' 또는 SELECT DATEADD(d, DATEDIFF(d, -1, GETDATE()), 0)SELECT DATEADD(SECOND, -1, DATEADD(d, DATEDIFF(d, -1, GETDATE()), 0)) ORACLE SELECT TRUNCATE(SYSDATE) + 0.99999 정확히는 23:59:59.136까지의 데이터 즉 1일은 86400초, 0.99999는 86399.136초 BETWEEN A AND B 포함 ( A 이상 B 미만)

NO(LOCK) 락 걸리면 이것 부터 의심해라. MSSQL은 기본적으로 (LOCK)이다. SELECT 문을 사용할 때 테이블 뒤에 NO(LOCK)을 안 써주면 SELECT 문장이 실행될 대 락이 걸린다. 락이 걸리면 UPDATE 문장은 LOCK인 SELECT 문장이 실행 끝날 때까지 기다렸다가 트랜잭션이 실행된다. SELECT 락이 걸리지 않기 위해서는 아래와 같이 테이블 뒤에 NO(LOCK)을 해줘야 SELECT 문장이 실행 중이더라도 트랜잭션이 실행될 수 있다. SELECT * FROM DUAL NO(LOCK)
제목: Microsoft SQL Server Management Studio ------------------------------ 이 백엔드 버전은 데이터베이스 다이어그램 또는 테이블 디자인을 지원하지 않습니다. (MS Visual Database Tools) ------------------------------ 단추: 확인 ------------------------------ 해결 서버와 클라이언트 버전이 맞지 않아 생기는 문제. 클라이언트 버전 업그레이드하면 됩니다.

[MSSQL] 년도 상관없이 월일로 날짜 검색 (LIKE) MSSQL에서 LIKE 검색할는 패턴확인해야합니다. 패턴확인 ==> convert(varchar,REGDATE) 1. 년도와 상관없이 12월 31일 조회 시 아래처럼 사용하면 필터링 안돼요. SELECT * FROM TABLE WHERE REGDATE LIKE '%12-31%' 2. 년도와 상관없이 12월 30일 조회 시 아래처럼 사용하여야 합니다. SELECT * FROM TABLE WHERE REGDATE LIKE '12 30%' 년도와 상관없이 오늘 날짜를 가지고온다고하면 아래 쿼리 사용하시면돼요. SELECT CONVERT(NCHAR(2), DATEPART(MONTH,GETDATE())) + ' '+ CONVERT(NCHAR(2), REP..