MSSQL
[MSSQL] 저장 프로시저(Stored Procedure)란?
저장 프로시저(Stored Procedure)란? 저장 프로시저(Stored Procedure)는 데이터베이스에서 실행할 수 있는 미리 정의된 SQL 쿼리와 코드 블럭의 집합이다. 저장 프로시저는 데이터베이스 서버에 저장되어 있고, 필요할 때 호출해서 실행한다. 저장 프로시저(Stored Procedure)의 주요 특징과 기능 1️⃣ 미리 컴파일된 코드 - 저장 프로시저는 데이터베이스 서버에 저장되어 미리 컴파일되므로 실행 속도가 빠르다. 2️⃣ 매개변수 - 저장 프로시저는 입력 매개변수를 받을 수 있으며, 이를 통해 동적 데이터 처리가 가능하다. 3️⃣ 재사용성 - 저장 프로시저는 여러 응용 프로그램 또는 쿼리에서 호출하여 재사용할 수 있다. 4️⃣ 보안 - 데이터베이스 객체로서 저장 프로시저는 데이터..
[MSSQL] LIKE 구문 사용 시 와일드카드를 문자열로 인식하기
에러내용 ITEM_ID ITEM_DESC 123 [1번] 멋진아이템 SELECT * FROM TAITEM WHERE ITEM_DESC LIKE '%[1번]%'; 위와 같이 ITEM_DESC가 [1번] 멋진아이템인 데이터가 존재하지만 MSSQL에서 [1번] 으로 LIKE 조회를 했을 때 원하는 값이 조회가 되지 않았다. 원인 select * from TAITEM where ITEM_DESC like '%[1번]%'; 원인은 MSSQL에서 '[' ']'는 와일드카드로 인식되기 때문이다. 📍 MSSQL 와일드카드란? 와일드카드란 문자열 패턴을 검색하고 일치하는 문자열을 필터링하는데 사용되는 특수 문자 또는 문자열이다. 와일드카드는 주로 LIKE 연산자와 함께 사용된다. 1️⃣ % (퍼센트 기호) %는 어떠한 ..
[MSSQL] 트랜잭션 로그(LDF) 파일 용량 줄이기
1. DB 정보 확인 sp_helpdb dbName 현재 지정된 mdf파일, ldf파일의 경로, 사이즈 등을 확인할 수 있다. 확인해보니 로그 파일 사이즈가 무려 1.7TB 였다... 트랜잭션 로그 파일 크기가 너무 크면 디스크 공간 부족, 백업&복구시간 증가, 성능 저하 등 여러가지 문제가 발생할 수 있다. 따라서 로그 파일의 크기를 적절하게 관리할 필요가 있다. 2. 트랜잭션 로그 백업(옵션) backup log dbName to disk='백업할경로\백업할로그명.bak' (나는 트랜잭션 로그를 백업할 필요는 없어서 스킵했다.) 3. 트랜잭션 로그 복구모델을 '단순'으로 변경 alter database dbName set recovery simple 4. 트랜잭션 로그 사이즈 줄이기 dbcc shri..
[MSSQL] 트랜잭션 로그가 'LOG_BACKUP'(으)로 인해 꽉 찼습니다.
에러내용 QL state [S0002]; error code [9002]; 데이터베이스 'DBNAME'의 트랜잭션 로그가 'LOG_BACKUP'(으)로 인해 꽉 찼습니다.; 로그 파일을 보관하는 디스크의 용량이 차서 SQL 서버에 에러가 발생했다 해결방안 SQL로 처리 1. 사용할 DB를 선택한다 USE dbname; 2. DB의 트랜잭션 로그 파일을 비운다 ALTER DATABASE dbname SET RECOVERY SIMPLE; 3. DB의 불필요한 공간을 축소한다 DBCC SHRINKDATABASE(dbname); 4. DB를 FULL로 재설정하여 트랜잭션 로그를 쌓는다 ALTER DATABASE dbname SET RECOVERY FULL;