프로그래밍/DB 80

[DB] postgresql DB구축하기

PostgreSQL을 DB를 구축해보도록 하겠습니다. 라이센스 정책이 무료이다보느 사용하는 업체들이 많아지고 관련해서 연계하는 경우가 많이 생겨서 구축해서 테스트를 해야되는 경우가 많아서 윈도우에 DB설치 후 테스트를 해보겠습니다. 1. Postgresql DB다운로드 - 먼저 아래사이트에서 OS버전에 맞게 다운로드를 합니다. 윈도우에 설치할 예정이여서 PostgreSQL 15.3버전을 윈도우에 설치해보겠습니다. https://www.postgresql.org/download/ 2. Postgresql DB 설치 진행 다운받은 설치파일(postgresql-15.3-1-windows-x64.exe)로 설치합니다. 15.31버전으로 설치하겠습니다. 기본적으로 Next로 하여 설치하면 되고 패스워드 입력부분을..

프로그래밍/DB 2023.06.04

[DB] MSSQL 프로시저 분기처리(continue,break,goto,return)

저장프로시저를 작성하다보면 처리중간에 반복문을 탈출하거나 지속처리, 프로시저 탈출등과 같이 분기처리를 해야되는 경우가 있는데 이 경우 아래 4가지를 사용하여 분기처리를 할 수 있습니다. 1. Continue / Break문 반복문내에서 반복문을 탈출하거나 지속처리할때 사용합니다. Continue는 반복문의 초기 위치로 이동 시킬 경우에 사용하고, Break는 반복문을 탈출시 사용합니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 declare @i int declare @count int set @i =1; print '3의배수는' while (@i

프로그래밍/DB 2023.02.27

[DB] MSSQL 문자열 숫자유무 체크 (ISNUMERIC)

MSSQL에서 특정문자열 값이 숫자유무인지 확인 하기 위해서는 ISNUMERIC함수를 사용하면 확인 가능합니다. 함수명 구문 설명 ISNUMERIC ISNUMERIC(expression) 숫자데이터인 경우 : 1 반환 숫자데이터가 아닌경우 : 0 반환 데이터별 처리 결과값 실제쿼리문으로 결과값이 어떻게 나오는지 테스트 해보겠습니다. 1 2 3 4 5 6 SELECT ISNUMERIC(1234) '1234',ISNUMERIC(-1234) '-1234', ISNUMERIC('0.1234') '0.1234',ISNUMERIC('-11133.1234') '-11133.1234', ISNUMERIC('\5000') '\5000', ISNUMERIC('$1.50') '$1.50',ISNUMERIC('-$1.50')..

프로그래밍/DB 2023.02.22

[DB] MSSQL 동의어(시노님) 사용 방법

MSSQL Management툴을 사용하다가 보면 동의어(시노님)라는 메뉴가 있습니다. 동의어의 사전의미는 같거나 비슷한뜻을 가진 낱말이라는 의이미고 영어로 시노님( synonym)이라 불립니다. DB상에서는 로컬이나 원격지(linkedserver)에 있는 다른 데이터베이스를 마치 자기 자신의 DB처럼 연결시켜서 사용 할 수 있게 해줍니다. alias 이라고 생각 하면 될것 같습니다. 시노님을 생성하고 사용하는 방법에 대해 알아 보겠습니다. 1. 동의어(시노님) 사용이유 아래 이미지를 보면 pubs데이터베이스로 연결된 상태에서는 다른 데이터베이스(sampledb)에 있는 데이터를 조회 하기 위해서는 select * from [sampledb].[dbo].UserInfo 와 같이 전체 명칭을 입력해야 합니..

프로그래밍/DB 2023.02.18

[DB] MSSQL 요일 정보 (datename, datepart), 요일 한글 함수

요일정보를 확인하는 방법에 대해 알아 보겠습니다. 요일정보를 확인하는 함수는 DATENAME,DATEPART로 MSSQL내장되어있는 함수로 사용가능하며 요일값을 변환(일,월,화,수...토)해서 받고 싶을경우는 사용자 함수를 만들어서 사용하면됩니다. 1. DATENAME, DATEPART함수사용 DATENAME함수를 사용해서 날짜필드의 요일값을 확인할 수 있습니다. DATENAME(weekday, 날짜필드)문으로 실행해보면 아래와 같이 일요일,월요일...토요일 한글로 나타나는 부분을 확인 할 수 있습니다. MSSQL이 한글버전이여서 아래와 같이 나오며 영문버전은 Sunday와 영문으로 결과값을 반환합니다. MSDN자료를 살펴보면 DATENAME(datepart,날짜형)부분에 datepart는 아래와 같은 ..

프로그래밍/DB 2022.08.31

[DB] MSSQL 사용자정의 함수 만들기

MSSQL 사용자 정의 함수사용법에 대해 알아보겠습니다. 사용자 함수는 언제 사용 하면 좋을까요? 프로그램 할때 만드는 함수와 같이 MSSQL서버상의서 함수를 만들어서 모듈식 프로그램이 사용가능합니다. 반복적으로 어떤 기능을 하는 부분을 함수로 만들어 두면 유용하게 사용 할 수 있습니다.저장프로시저와 마찬가지로 사용자 정의 함수는 TSQL코드의 컴파일 비용을 줄이 수 있습니다. MSDN의 함수 Syntax를 보면 아래와 같습니다. 테이블 생성하는 스크립트와 유사하며 CREATE, ALTER문을 사용해서 함수 생성 및 수정이 가능합니다. DROP문을 사용해서 해당함수를 삭제할 수 있습니다. 그럼 이제 실제로 함수를 만들어 보겠습니다. 1. 사용자 함수생성방법 AdventureWorksLT2019 데이터베이..

프로그래밍/DB 2022.08.30

[DB] MSSQL 저장프로시저 디버그

저장프로시저로 디버깅하는 방법에 대해 알아 보겠습니다. 프로시저를 만들고 테스트 할때 해당값이 올바른지 테스트를 해봐야되는 상황이 있습니다. SQL Management의 디버그 메뉴를 사용하면 편리하게 디버깅을 할 수 있습니다. 그럼 Pubs 데이터베이스로 디버깅 테스트 해보겠습니다. 1. print문을 사용해서 디버깅 먼저 Pubs 데이터베이스에 아래와 같이 reqByroyalty 프로시저 생성합니다. titleauthor테이블의 percentage의 개수와 title_id의 max값을 리턴받는 프로시저를 만듭니다. print문을 사용해서 테스트값을 출력해서 확인하는 방법이 있습니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 ..

프로그래밍/DB 2022.08.23

[DB] MSSQL 숫자문자열 정렬 (Convert, Len함수사용)

데이터타입이 문자형인데 숫자값이 들어가서 사용하는 경우가 있습니다. 이럴경우 Order By문을 사용해서 정렬을 하면 문자열로 정렬이 되어 원치않는 결과값이 나오는 경우가 있습니다. 이때 숫자값으로 변환해서 정렬하는 방법에 대해 알아보겠습니다. 방법1. Convert를 이용하여 숫자형으로 변환후 조회 1 2 3 SELECT * FROM [AdventureWorks2014].[HumanResources].[Employee] Order By Convert(int, NationalIDNumber) 방법2. Len함수를 사용하여 정렬 1 2 3 SELECT * FROM [AdventureWorks2014].[HumanResources].[Employee] Order By Len(NationalIDNumber),..

프로그래밍/DB 2022.06.29

[DB] MSSQL DELETE TOP문 사용하여 대용량 데이터 삭제하기

데이터베이스를 대용량으로 삭제하고 싶은경우가 있습니다. 대량의 데이터를 삭제할경우에는 아무래도 시스템이 멈추는 증상이 발생합니다. 해당부분을 최소화하기 위해서 DELETE문에 TOP문을 사용해서 최소화 하는 방법에 대해서 알아보겠습니다. 1. LogTest 테스트용 테이블 생성 1 2 3 4 5 6 7 8 9 10 11 CREATE TABLE [dbo].[LogTest]( [id] [int] NOT NULL, [logDateTime] [datetime] NULL, CONSTRAINT [PK_LogTest] PRIMARY KEY CLUSTERED ( [id] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALL..

프로그래밍/DB 2021.10.04

[DB] MSSQL 조회결과를 JSON으로 (for json auto)

MSSQL데이터를 JSON으로 테스트 해보는 경우가 있습니다. SELECT 조회결과를 JSON형태로 변환해주는 부분이 있어서해당관련 부분에 대해서 안내드리겠습니다. MSSQL 2016버전이상에만 지원되며 이하버전은 지원이 안되니 참고하시기 바랍니다. 1. 테이블 전체 내용을 JSON으로 만들기 pubs데이터베이스의 titles테이블 SELECT결과입니다. 아래와 같이 전체조회한 결과는 아래 이미지와 같습니다. SELECT * FROM titles for json auto 명령문으로 조회결과를 json자료로 만들어 보겠습니다. 아래와 같이 결과값이 나타납니다. 쿼리결과에 보면 json으로 변경된 부분을 알수 있습니다. 해당부분 결과값을 클릭합니다. 해당결과를 클릭하면 아래와 같이 새쿼리창에 JSON결과값이..

프로그래밍/DB 2021.09.10
1 2 3 4 5 6 ··· 8