티스토리 뷰
출처 :https://m.blog.naver.com/okcharles/223100400111
전제 조건
이 글은 PostgreSQL 이 이미 설치되고 실행된 상태를 기준으로 설명된 것으로, 설치되어 있지 않다면, 설치 후에 계속 읽으시기 바랍니다.
ODBC
ODBC - 위키백과, 우리 모두의 백과사전 (wikipedia.org)
데이터 베이스 제품 마다 약간 씩 달랐던 데이터 베이스 클라이언트 동작 방식을 통일한 표준으로, 거의 모든 데이터 베이스 제품이 따르고 있습니다.
그 결과로, 데이터 베이스 마다 제공되는 클라이언트 프로그램을 사용할 필요가 없이, ODBC를 준수하는 클라이언트를 사용하면, 데이터 베이스 제품과 상관없이 표준 쿼리 메시지를 주고 받을 수 있게 됩니다.
각 데이터 베이스 제품은 ODBC 클라이언트와 연동하기 위한 드라이버를 제공하는데, 클라이언트 컴퓨터에 이 드라이버를 설치하면 통신을 하기 위한 준비가 완료됩니다.
1. PostgreSQL ODBC 드라이버 설치
postgreSQL 에서 제공하는 ODBC 드라이버를 다운로드 받을 수 있는 사이트는 아래와 같습니다.
2023년 5월 15일 현재 최신 버전은 13.02 입니다.

ODBC 드라이버가 설치될 컴퓨터의 아키텍쳐에 맞는 드라이버 설치 파일을 클릭하여, 설치 파일 다운로드를 완료하고, 완료되면, 설치파일을 실행하여 드라이버를 설치합니다.
예제를 위해, 64비트 드라이버(...x64)를 설치했습니다.
2. 드라이버와 데이터 베이스 연결 설정
ODBC 드라이버 인스턴스와 실물 데이터 베이스는 1:1의 연결관계를 갖습니다.
즉, 각 PostgreSQL 드라이버 인스턴스는 하나의 데이터 베이스(데이터 베이스 서버 내부에 존재하는 데이터 베이스 인스턴스)에 연결됨을 의미합니다.
윈도우의 경우, 데이터 베이스 인스턴스에 연결된 드라이버 인스턴스를 "ODBC 데이터 원본(Data Source)"라고 부릅니다.
ODBC로 접급할 수 있는 데이터 베이스를 설치하려면, 데이터 원본을 시스템에 추가해야 하는데, 이는 "ODBC 데이터 원본 관리자"를 통해 설정할 수 있습니다.
윈도우 검색창에 "ODBC 데이터" 까지 입력하면, 아래처럼 두 개의 항목이 나오는데,

이 중에서, 64비트 드라이버 관리자를 선택합니다.
드라이버를 64비트 용으로 받았기 때문에, 64비트 용 드라이버 관리자를 선택한 것입니다.
드라이버 설치 확인
검색된 데이터 원본 관리자(64비트)를 실행한 후, [드라이버] 탭을 열면, 이전 단계에서 설치한 postgresql ODBC 드라이버가 설치된 것을 확인할 수 있다.

참고로, "Microsoft Excel Driver"가 이미 설치되어 있는 것을 확인할 수 있는데, 이는 엑셀 문서를 데이터 베이스 처럼 다룰 수 있다는 의미입니다. (이글에서는 다루지 않습니다.)
데이터 소스 노드(Data Source Node) 추가
[사용자 DSN] 탭으로 들어와서, [추가] 버튼을 누르면

ODBC 드라이버 선택
컴퓨터에 설치된 드라이버 중, PostgreSQL Unicode(x64) 드라이버를 선택한 후, [마침]을 누릅니다.

데이터 베이스에 한글 데이터가 있는 경우, 반드시 Unicode 용 드라이버를 선택해야 합니다.
ODBC 드라이버 설정
[마침] 버튼을 누르면, 드라이버 설정화면이 나오는데, 이미 구동 중인 데이터 베이스와의 연동을 위한 '연결 문자열'에 해당하는 값을 입력합니다.

Data Source : 소스 이름.
|
Description : 소스에 대한 설명. 없어도 됨.
|
Database : 서버에 존재하는 데이터 베이스 이름
|
SSL Mode : 데이터베이스 서버가 SSL 통신 설정된 경우 설정. (disable 그대로 놔둠)
|
Server : 데이터 베이스 서버 주소
|
Port : 접속 포트(PostgreSQL 기본값: 5432)
|
User Name : 데이터 베이스 서버에 등록된 ID
|
Password : 사용자의 비밀번호
|
접속 테스트
설정값들을 입력하고, [Test] 버튼을 눌러, 접속이 제대로 되는지 확인합니다.

실패 시, 성공할 때까지 설정값 수정 => 테스트를 반복합니다.
테스트 성공 후, [save] 버튼을 누르면 아래와 같이 [사용자 DSN] 탭에 추가된 것을 확인할 수 있습니다. .

비주얼 스튜디오에 데이터 소스 추가
ODBC를 지원하는 데이터 베이스 클라이언트 중 하나가, 비주얼 스튜디오의 서버 탐색기입니다.
서버 탐색기는 이전 단계에서 설정한 데이터 소스를 사용할 수 있는데, 이에 대해 알아 봅니다.
(VS 2022 기준)
서버 탐색기 실행
비주얼 스튜디오의 [보기] => [서버 탐색기] 를 선택합니다. (!! 주의 : [SQL Server 개체 탐색기] 아님.)

서버 탐색기에서, [데이터 베이스 연결] 아이콘을 누르거나, [데이터 연결]에 우클릭하여, [연결 추가]를 선택합니다.

데이터 소스 종류 선택
서버 탐색기가 다룰 수 있는 데이터 소스의 종류로는,
- 마이크로소프트 액세스 데이터베이스 파일
- ODBC 데이터 소스
- 마이크로소프트 SQL Sever 서버
- 마이크로소프트 SQL Server 서버의 데이터 베이스 파일
- Oracle 데이터 베이스 서버
가 있습니다.
이중에 ODBC 데이터 소스를 선택합니다.
- Microsoft ODBC 데이터 소스 - 를 선택하고 [계속] 버튼을 누릅니다.

데이터 소스 선택
데이터 소스 선택은 연결 스트링으로도 설정할 수 있으나, 우리는 이미 등록한 데이터 소스를 사용할 것입니다.
[연결 추가] 창의 [데이터 소스 사양] 구역에서, [사용자 또는 시스템 데이터 소스 이름 사용] 아래의 빈 칸을 누르고, 사용자 DSN 으로 등록해 두었던, PostgreSQL 소스를 선택합니다.

데이터 소스를 선택하면, 그 아래에 로그인 정보 구역의 사용자 이름과 암호가 저절로 채워집니다.
[연결 추가] 창에서도 연결 테스트를 수행해봅니다.

추가 확인
모든 설정이 완료되면, VS 의 [서버 탐색기]에서 - 데이터 연결 - 항목 아래에 데이터 소스가 나열됩니다.

데이터 소스에 대한 쿼리
쿼리문을 직접 작성할 수도 있지만, [서버 탐색기]는 위지위그 방식으로 쿼리를 생성하는 기능을 제공합니다.
데이터 소스나, 데이터 소스의 하위 테이블 중에 하나에 우클릭하고, [새 쿼리] 선택

테이블 선택
창의 이름은 [테이블 추가]인데, 쿼리를 보낼 테이블을 선택하는 창입니다.
데이터 소스가 가지고 있는 테이블들이 나열되고, 이 중 하나를 선택 후 [추가] 버튼을 누르면 됩니다.
여러 개를 선택해도 되지만, 예제를 위해, 하나만 선택하고 [닫기]를 누릅니다.

쿼리 조건 설정
쿼리 편집창이 열립니다. 이 창은 총 4개의 영역으로 구성되어 있습니다.
제일 위에 있는 구역은 조건을 적용할 테이블 컬럼을 선택하는 영역이 있고,
그 아래에는, 조건 값을 입력하는 영역
세번째는, 위 두 영역의 결과로 생성된 쿼리문을 보여 주는 영역,
제일 아래에는, 쿼리의 결과를 보여주는 영역입니다.

쿼리 실행
컬럼을 선택하고, 조건을 입력 후, 메뉴에서 [쿼리 실행] 버튼을 누르거나, 컨트롤+r 을 누르면, 쿼리의 결과가 가장 아래 영역에 셀 테이블 형식으로 표시됩니다.

예제
예제를 하나 해보겠습니다.
데이터 소스의 테이블 중에, 'name' 필드를 보유하고 있는 것을 선택한 것을 전재로 합니다.

쿼리 편집창 첫번째 영역에서, name 컬럼을 선택하고,
두번째 영역에서, 필터 열의 값으로, " LIKE '김%' "를 입력했습니다. name의 값 중, '김'으로 시작하는 값을 찾기 위한 것입니다.
여기까지만 하면, 세번째 영역이 자동으로 생성한 쿼리를 보여줍니다.
이제, 컨트롤+R 을 눌러, 쿼리를 실행하면,
네번째 영역에 데이터베이스가 반환한 값들이 표시됩니다.
위와 같은 검색 뿐만 아니라, 테이블 추가, 테이블에 열 추가, 행 추가, 행 삭제, 행 변경 등 모두 가능합니다.
'Skill > postgreSQL' 카테고리의 다른 글
postgresql string_to_array (1) | 2024.11.29 |
---|---|
postgresql JSON 배열 조회 (0) | 2024.11.01 |
postgresql CTE (0) | 2024.10.11 |
PostgreSQL) Sequence 생성, 활용, 초기화 (0) | 2024.10.07 |
postgresql] column명과 type조회 (0) | 2024.09.20 |
- Total
- Today
- Yesterday
- 전후방탐색
- 여러 컬럼 update
- CSS
- setter
- sumifs
- $.each
- Keycode
- JQuery
- draw.io
- DatePicker
- spring
- getter
- object key
- element위치
- Javascript
- springboot
- QueryDSL
- PostgreSQL
- border-collapse
- 진열사랑
- devtools
- lombok
- oracle
- 프로젝트명변경
- @ExceptionHandler
- excel
- 정규식
- $.extend
- ul li로 테이블
- caniuse
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 26 | 27 | 28 | 29 | 30 | 31 |