Postgres 대량 삽입

Postgres Daelyang Sab Ib



대량 삽입은 단일 작업으로 여러 행의 데이터를 테이블에 추가하는 프로세스입니다. 이는 특히 많은 양의 데이터를 처리할 때 한 번에 하나의 행을 삽입하는 것보다 훨씬 빠를 수 있습니다.

PostgreSQL에서 대량 삽입을 수행하는 가장 일반적인 방법은 파일 또는 표준 입력에서 데이터를 가져와 테이블에 삽입할 수 있는 COPY 명령입니다. COPY 명령을 사용하려면 데이터가 특정 형식(일반적으로 CSV 또는 텍스트 파일)이어야 합니다.

이 명령을 사용하여 PostgreSQL에서 대량 삽입을 수행하는 방법을 살펴보겠습니다.







PostgreSQL 대량 삽입

PostgreSQL에서 대량 삽입을 수행하는 단계를 살펴보겠습니다.



데이터 준비

대량 삽입을 수행하기 전에 대상 데이터가 적합한 형식인지 확인하십시오. 데이터를 CSV 또는 TSV로 구성하는 것이 좋습니다. 쉼표나 탭으로 구분되는 행과 열로 대상 데이터를 구조화할 수 있습니다.



PostgreSQL에 연결

다음으로 원하는 클라이언트를 사용하여 PostgreSQL 데이터베이스에 연결합니다. 이 자습서에서는 사용 편의성과 범용 액세스를 위해 PSQL 유틸리티를 사용합니다.





$ psql -안에 포스트그레스 -디 < 데이터베이스 이름 >

예를 들어 다음 쿼리를 실행하여 user_information 데이터베이스를 사용할 수 있습니다.

$ psql -안에 포스트그레스 -디 사용자 정보

대상 데이터베이스가 없는 경우 CREATE DATABASE 명령을 사용하여 만들 수 있습니다.



데이터베이스 생성 < db_name >

테이블 만들기

다음으로 데이터를 삽입하려는 테이블이 존재하는지 확인해야 합니다. 테이블 구조는 지원되는 데이터 유형을 포함하여 데이터 구조와 일치해야 합니다.

테이블이 없으면 CREATE TABLE 명령을 사용할 수 있습니다.

테이블 생성 network_users (
ID 직렬 기본 키,
사용자 이름 VARCHAR ( 255 ) NULL이 아님,
ip_address INET,
mac_address MACADDR,
마임 텍스트
) ;

주어진 명령은 id, username, ip_address, mac_address 및 mime 열이 있는 'network_users'라는 테이블을 생성해야 합니다.

테이블이 준비되면 PostgreSQL 테이블에 데이터를 로드할 수 있습니다. 다시 말하지만 서버가 실행 중인 시스템에서 데이터 파일에 액세스할 수 있는지 확인하는 것이 좋습니다.

대량 삽입 실행

다음으로 COPY 명령을 사용하여 파일에서 데이터베이스 테이블로 데이터를 로드할 수 있습니다. 명령 구문은 다음과 같습니다.

COPY table_name ( 열1, 열2, 열3 )
에서 '경로/대상/data_file'
와 함께 ( 형식 csv | 텍스트, 구분 기호 '구분자' , 머리글 ) ;

형식(CSV 또는 텍스트), 파일에 사용되는 구분 기호(예: CSV의 경우 ',', TSV의 경우 '\t'), 파일에 헤더 행이 포함되는지 여부를 지정할 수 있습니다.

예를 들어 'network_users' 테이블에 데이터를 복사하려면 다음과 같이 명령을 실행할 수 있습니다.

network_users 복사 ( ID , 사용자 이름, ip_address, mac_address, mime ) ~에서 'network_users.
CSV'
~와 함께 ( csv 형식, 구분 기호 ',' , 머리글 ) ;

이렇게 하면 PostgreSQL이 파일에서 테이블로 데이터를 로드할 수 있습니다. 테이블의 데이터를 쿼리하여 삽입이 성공했는지 확인할 수 있습니다.

PostgreSQL 대량 삽입 PgAdmin

pgAdmin이 제공하는 그래픽 인터페이스를 사용하여 데이터 파일을 가져올 수도 있습니다.

pgAdmin을 실행하여 시작하고 필요한 연결 세부 정보를 제공하여 PostgreSQL 데이터베이스에 연결합니다.

그런 다음 대량 삽입을 수행할 테이블을 찾습니다. 브라우저 패널에서 데이터베이스와 테이블을 찾을 수 있습니다.

테이블을 마우스 오른쪽 버튼으로 클릭하고 '가져오기/내보내기'를 선택합니다.

'가져오기/내보내기' 마법사에서 '가져오기' 옵션을 선택하고 데이터 소스 유형을 선택합니다. 예를 들어 파일에서 쿼리 또는 클립보드를 가져올 수 있습니다.

다음 단계에서 대량 삽입을 위한 파일 세부 정보를 제공합니다. 파일 형식(CSV, TSV)을 선택하여 데이터 파일의 경로를 지정하고 파일에 사용되는 구분 기호를 설정합니다.

파일 가져오기 옵션에 만족하면 '확인'을 클릭하여 가져오기 프로세스를 시작합니다. 오른쪽 하단 창에 프로세스 상태가 표시되어야 합니다.

검색어 도구를 열고 검색어를 실행하여 가져오기가 성공했는지 확인할 수 있습니다.

선택하다 * FROM network_users;

산출 :

결론

PSQL 및 pgAdmin을 사용하여 외부 데이터 파일에서 PostgreSQL 데이터베이스 테이블로 대량 삽입을 수행하는 방법을 살펴보았습니다.