프로그래밍/DB 72

[DB] postgresql 외부접속 활성화

postgresql을 설치 후 외부에서 접속을 활성화 하기 위해서는 pg_hba.conf파일의 정보를 변경해야 합니다. 해당부분을 변경하지 않을경우에는 아래와 같이 "암호화 안함 연결에 대한 설정이 pg_hba.conf 파일에 없습니다" 라는 오류가 발생합니다. 1. pg_hba.conf 파일 정보 변경. C:\\Program Files\\PostgreSQL\\15\\data\\pg_hba.conf 파일을 메모장으로 열면 아래와 같이 나타나며 IPv4항목에 127.0.0.1에 대한 부분이 있는데 그 다음라인에 Address항목을 0.0.0.0/0으로 추가합니다. 2. postgresql 서비스 재시작 윈도우 서비스항목에서 설치도나 postgresql서비스를 재 시작합니다. 외부에서 접속테스트를 해보면 아..

프로그래밍/DB 2023.06.06

[DB] postgresql pgAdmin4 초기설정으로 리셋하기

pgAdmin4화면을 Remove Panel등 실수로 삭제를 했을때 아래화면과 같이 DB연결화면이 나오지 않는 경우가 있습니다. 이때 최초 설치된 UI로 리셋하는 방법입니다. pgadmin관련 툴의 화면 설정부분은 다음 경로(C:\\Users\\사용자명\\AppData\\Roaming\\pgadmin)에 저장됩니다. 이 폴더를 모두 삭제 후 다시 pgadmin을 재실행하면 초기 설치한 화면으로 리셋됩니다. 삭제 후 재 실행하면 아래와 같이 초기 설치후 화면 UI로 표기되는 부분을 확인 할 수 있습니다.

프로그래밍/DB 2023.06.05

[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
1 2 3 4 5 ··· 8