본문 바로가기

mssql36

[MSSQL] MDF, LDF 이동 / DB 상위 버전->하위 버전으로 이동 시 오류 발생 MSSQL에서 상위 버전 데이터 베이스를 하위로 이동하기 위해서는 데이터베이스 스크립트로 일괄 이동이 필요합니다. 과정 수행 중 오류가 발생해서 MDF/LDF를 이동하게 되었습니다. C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn>sqlcmd -S [서버] -i [경로] -o [로그경로] -U [ID] -P [비번] -d [데이터베이스] -V 17 발생한 오류 메시지. 파일 그룹 'PRIMARY'에 디스크 공간이 부족하여 데이터베이스 'TEMP_FOR_SPLIT'에 새 페이지를 할당할 수 없습니다. 파일 그룹의 개체를 삭제하거나, 파일 그룹에 파일을 추가하거나, 파일 그룹의 기존 파일에 대해 자동 증가를 설정하여 필요한 공간을 만.. 2020. 2. 21.
MSSQL TO MYSQL 데이터 포팅시 NULL 처리 ISSUE. MSSQL BCP 로 데이터를 내린 후 MYSQL로 포팅 시 NULL 값에 대한 별도 처리 필요 해결. MSSQL 상에서 컬럼을 ISNULL 처리하여 MYSQL로 포팅 TIP. MSSQL 로 BCP한 데이터에 ISNULL(컬럼, '\N') 으로 처리하고 MYSQL로 포팅 시 MYSQL에서 NULL로 인식 함 단계 1. 테이블 정보를 읽어와서 ISNULL을 포함한 쿼리 구문을 생성한다. DECLARE @TABLE NVARCHAR(MAX) DECLARE @QUERY NVARCHAR(MAX) DECLARE @QUERY_S NVARCHAR(MAX) SET @TABLE = 'temp' SET @QUERY = 'SELECT ' SELECT @QUERY_S = S FROM (SELECT TOP 1 STU.. 2020. 2. 7.
[MSSQL] TSQL 영문 대소문자 구분 비교 문자열 비교 유형을 지정해서 비교 할 수 있습니다. Korean_Wansung_CS_AS : 대소문자 구분 Korean_Wansung_CI_AS : 대소문자 구분 안함 COLLATE 기본은 대소문자 구분 안함으로 설정됩니다. 사용 방법은 비교하고자하는 조건 데이터(또는 컬럼)에 COLLATE 키워드를 붙여 아래와 같이 사용합니다. 예시 select case when 'AT/센터(/양재동)' = 'aT/센터(/양재동)' COLLATE Korean_Wansung_CS_AS then 1 else 0 end 결과 1 문자열 내 소문자가 포함되어있는지 검색 declare @STR varchar(100) set @STR = 'aT/센터(/양재동)' select case when @STR UPPER( @STR) CO.. 2020. 1. 16.
[MSSQL] 하위 버전 데이터 마이그래이션 MSSQL 은 기본적으로 하위버전 db백업 파일을 상위버전에 올리는 것은 가능 하지만 상위버전의 백업파일을 하위버전의 dbms에 올릴 수 없습니다. 방법 1. Database publish wizard 설치하여(sa 계정으로) 배포하기 (실패) 방법 2. 스크립트 추출(데이터 포함) 하여 복원하기 (성공) ssms의 스크립트 생성 기능을 활용하여 db내 전체 구성요소를 스크립트로 내린다. 테이블 내 데이터를 포함하도록 설정 변경 필요 ssms 상의 sqlcmd 모드를 이용해서 파일을 실행하거나 :r 스크립트.sql sqlcmd.exe를 활용하여 sql 파일을 해당 서버에 실행한다. -> 대용량 데이터의 경우 기본 32비트 sqlcmd에서는 'System.OutOfMemoryException' 이 발생하므.. 2020. 1. 2.