MSSQL
MSSQL 다시 만들 수 없는 테이블을 변경했거나 [테이블을 다시 만들어야 하는 변경 내용 저장 사용 안 함] 옵션을 설정했습니다 해결방법
[에러내용] [해결] - 도구 > 옵션 > 디자이너 > 테이블 및 데이터베이스 디자이너 선택 - 테이블을 다시 만들어야 하는 변경 내용 저장 안 함 체크 해제
[MS-SQL] 저장 프로시저 내용 검색·조회하는 방법 총정리 (MSSQL 실무용)
간혹 프로시저에서 다른 프로시저 호출 되는 SP 로 검색 해야 하는 경우가 있다프로시저 검색 방법에 대해 알아보기로 했다프로시저 명칭 조회SELECT ROUTINE_NAME FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_DEFINITION LIKE '%SP명%'AND ROUTINE_TYPE='PROCEDURE'order by ROUTINE_NAME
[MS-SQL] REPLACE로 특정 문자열 일괄 업데이트 하는 가장 쉬운 방법
REPLACE 란?REPLACE() 함수는 문자열중 조건에 맞는 문자열을 다른 문자열로 변경하여 리턴하는 함수 REPLACE 사용방법 REPLACE([컬럼명], '[변경할 문자열 패턴]', '[새로운 문자열]') 데이터 일괄 업데이트 쿼리BEGIN TRANSACTION;SELECT *FROM [테이블] WHERE 대상컬럼 LIKE '%변경할 문자열%'UPDATE [테이블] SET 대상컬럼 = REPLACE(대상컬럼, '변경할 문자열', '새로운 문자열')WHERE 대상컬럼 LIKE '%변경할 문자열%' SELECT *FROM [테이블] WHERE 대상컬럼 LIKE '%새로운 문자열%' ;ROLLBACK;-- COMMIT;
[MS-SQL] 날짜 형식 포맷(CONVERT) 쉽게 정리한 가이드
CONVERT - 데이터 형식을 변환하기 위해 사용됨 - 날짜와 시간 데이터 형식을 변환하는데 자주 사용되고 다양한 날짜 및 시간 형식을 지원함CONVERT(date_type, expression, style)date_type : 변환하려는 데이터의 형식expression : 실제 데이터 값style : 변환할 날짜 및 시간형식 MSSQL 날짜 변환표 번호쿼리 결과코드 0 CONVERT(CHAR(19), DATETIME, 0) 01 02 2000 1:14PM MM DD YYYY H:MM 1 CONVERT(CHAR(10), DATETIME, 1) 01/02/2000 MM/DD/YYYY 2 CONVERT(CHAR(8), DATETIME, 2) 00.01.02 YY.MM.DD 3 CONVERT(CHAR(8)..
[MSSQL] 메시지 3702, 수준 16, 상태 3, 줄 1Cannot drop database "database name" because it is currently in use.
mssql 데이터 베이스를 삭제 하려고 하니 삭제가 되지 않고 오류가 난다. [에러내용] " 메시지 3702, 수준 16, 상태 3, 줄 1 Cannot drop database "ABC" because it is currently in use. " [발생원인] ABC 라는 데이터 베이스 삭제를 하려고 하니 삭제가 되지 않는다 [해결] 1. 해당 데이터베이스를 다른 세션에서 사용하고 있어 강제로 종료 하는 쿼리를 사용했다 USE master GO ALTER DATABASE 데이터베이스이름 SET OFFLINE WITH ROLLBACK IMMEDIATE GO 2. 데이터베이스 삭제 DROP DATABASE 데이터베이스이름
[MSSQL] DB(Database) 전체 백업, 데이터베이스 Full BackUp
DBA 기본 업무중에 하나는 데이터베이스(DB) 백업 이다 데이터베이스 (DB) 백업 을 자동으로 설정 해두지 않는다면 장애발생, 문제발생시에 대응이 어렵다 SSMS 유지관리계획 을 통해 자동으로 데이터베이스 전체 백업 설정 하도록 정리를 해볼까 한다. 1. [관리탭 OPEN] > [유지관리계획 클릭] 2. [유지관리계획 오른쪽마우스 클릭] > [유지관리계획마법사 클릭] 3. [유지관리계획마법사 시작] > [다음 클릭] 4. [계획 속성 선택] > [이름, 설명 작성] > [다음 클릭] 5. [데이터베이스백업 (전체) 선택] > [유지 관리 정리 태스크 선택] > [다음 클릭] 6. [데이터베이스 백업(전체)] > [다음 클릭] 7. [데이터베이스 백업 태스크 정의] > [데이터베이스 오른쪽 화살표 선택..
[MSSQL] 데이터베이스 (DB) 백업 압축 설정
운영 하는 DB 관리 중에 IDC 서버와 EC2 에서 운영 중인 DB들이 있다 모니터링 하다보니 디스크 공간이 부족하여 공간확보하기 위한 점검들을 하였다 공간 확보를 하기 위해 전체데이터 (FULL) 백업시 압축 설정을 하여 공간 확보 한 내용을 정리해보았다. [현상] DB SERVER 모니터링 하다보니 디스크 공간이 부족한 현상 발견 [확인] 전체 데이터베이스 자동 백업 시 백업 압축 설정 되지 않은 부분 확인 [해결] 1. [데이터베이스백업태스크] > [백업압축설정 확인] 2. [백업압축설정 확인] - 기본서버 설정 사용 : 백업 압축 기본값 서버 구성 옵션으로 설정 - 백업 압축 : 서버 수준 기본값에 관계 없이 백업을 압축 - 백업 압축 안함 : 서버 수준 기본값에 관계업싱 압축되지 않는 백업 3..
[MSSQL] DB 접근 접속자 로그 조회
현재 DB(데이터베이스) 에 누가 접근 했는지 확인 할때가 종종 있다. 예를 들면 강제로 KILL 을 해야 하는 경우 , 데이터베이스 정보 변경 , 데이터베이스 접속기록을 남기고자 할때 등의 경우다. 1. 쿼리 (Query) 실행 SELECTSP.SPID , SP.LOGINAME , SP.LOGIN_TIME , SP.LAST_BATCH , SP.PROGRAM_NAME , SP.CMD , SC.CLIENT_NET_ADDRESS FROMSYS.SYSPROCESSES SP INNER JOIN SYS.DM_EXEC_CONNECTIONS SC ON SP.SPID = SC.SESSION_ID 2. 결과 LOGINAME : 접속자명 LOGIN_TIME : 로그인 시간 LAST_BATCH : 마지막 실행시간 PROGR..
[MSSQL] 프로파일러(Profiler) 실행 및 설정 쿼리 추적 사용법
시스템 운영 중 개발자들에게 자주 들어오는 질문 중 하나..!! " 사이트가 느려요..DB 에 이상 없는지 봐주세요 " 왜 어떤 액션을 했을때 느린건지, 이벤트는 진행 된게 있는지 등의 상세 상황은 말해주지 않는것인가...?! 이럴때 주로 사용하는 프로파일러 (SQL Profiler) ..!!! 프로파일러( Profiler) 란? 각종 이벤트를 추적, 수집 함으로써 SQL SERVER 최적화를 위해 사용되는 도구 실행 1. SSMS [도구] > [SQL Server Profiler 선택] 2. SQL Server Profiler 창 확인 3. [파일] > [새추적 클릭] 4. 추적 하고자 하는 데이터베이스에 로그인 5. 이벤트 선택 - 쿼리문 추적 진행할 경우 저장프로시저(Stored Procedures..
[MSSQL] ALTER COLUMN 열 수정 안될 때
테이블 컬럼을 삭제를 해야 해서 컬럼 삭제 쿼리를 실행했더니 오류가 나서 삭제가 안된다 해결 한 내용에 대해 정리 해보았다 [에러내용] " 메시지 5074, 수준 16, 상태 1, 줄 10 The object 'DF_' is dependent on column 'COLUMN NAME'. 메시지 4922, 수준 16, 상태 9, 줄 10 ALTER TABLE DROP COLUMN COLUMN NAME failed because one or more objects access this column. " [발생원인] 컬럼을 삭제하려고 하니 해당 열에 DEFAULT 제약조건이 걸려 있어 수정이 불가능 한 오류 가 났다 [해결] 1. 제약조건 확인 EXEC SP_HELP 테이블명 2. 제약조건 삭제 ALTER T..