SQL5 SSMS "인덱스가 배열 범위를 벗어났습니다." 위의 사진처럼 SSMS에서 데이터베이스를 연결하자마자 에러가 발생하는 현상이 있다. 이 경우는 SSMS 버전 보다 SQL Server 버전이 높을 경우 발생하는 에러이다. SSMS 는 10.0.4000.0 버전이고, 이 버전은 SQL Server 2008 설치할 때, 같이 설치됬던 버전이다. 연결 된 서버 버전은 SQL Server 2019 버전이며, 버전 정보는 공식 홈페이지를 확인하면 된다. https://support.microsoft.com/en-us/topic/kb4518398-sql-server-2019-build-versions-782ed548-1cd8-b5c3-a566-8b4f9e20293a KB4518398 - SQL Server 2019 build versions Table of con.. 2022. 2. 9. 저장 프로시저 인덱싱 분리 및 실행 계획 분리 1. 실행 계획 캐싱의 특성과 문제점SQL Server 실행 계획 캐싱 원리문자열이 동일한 쿼리는 동일한 실행 계획을 사용합니다.SQL Server는 쿼리 텍스트를 해싱하여 실행 계획을 캐싱합니다.쿼리가 약간이라도 다르면, 별도의 실행 계획이 생성됩니다.대소문자 차이 (SELECT vs select)나 공백이 달라도 서로 다른 쿼리로 인식됩니다.동일한 쿼리라도 실행 시 전달된 파라미터 값에 따라 실행 계획이 달라질 수 있습니다.파라미터 스니핑(Parameter Sniffing): SQL Server는 처음 실행된 쿼리의 파라미터 값을 기준으로 실행 계획을 최적화합니다. 이후 다른 파라미터 값이 전달되더라도 초기 계획을 재사용하므로 비효율이 발생할 수 있습니다.2. sp_executesql의 장점동적 쿼리.. 2022. 1. 25. SQL Insert 전 중복 체크 저장 프로시저 아래와 같이 테이블이 있다고 가정한다. ID PK varchar(30) Title nvarchar(250) Contents nvarchar(max) CreatedDate datetime IsDeleted bit GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [up_Insert_Test] @ID varchar(30), @TITLE nvarchar(250), @CONTENTS nvarchar(max), @ISDELETED bit AS BEGIN -- SET NOCOUNT.. 2022. 1. 15. SQL Convert Convert 구문은 아래와 같습니다. CONVERT ( 데이터 타입(길이) , 변형할 값 ) CONVERT ( 데이터 타입(길이) , 변형할 값 , 스타일 ) 스타일 datetime, smalldatetime,datetimeoffset 스타일은 아래의 스타일 포멧을 사용합니다. 스타일 포멧 스타일 포멧 1 mm/dd/yy 101 mm/dd/yyyy 2 yy.mm.dd 102 yyyy.mm.dd 3 dd/mm/yy 103 dd/mm/yyyy 4 dd.mm.yy 104 dd.mm.yyyy 5 dd-mm-yy 105 dd-mm-yyyy 6 dd mon yy 106 dd mon yyyy 7 Mon dd, yy 107 Mon dd, yyyy 8 hh:mi:ss 108 hh:mi:ss 9 mon dd yyyy h.. 2022. 1. 12. 이전 1 2 다음 반응형