DB

[PostgreSQL]테이블 생성과 데이터 삽입

니엘개발자 2023. 12. 22. 00:00
반응형

PostgreSQL에서 테이블 생성과 데이터 삽입하기

1. 테이블 생성

PostgreSQL에서 테이블을 생성하는 방법은 간단합니다. CREATE TABLE 문을 사용하여 테이블의 구조를 정의할 수 있습니다. 예를 들어, 다음과 같이 사용합니다.

 CREATE TABLE 테이블명 (     컬럼1 데이터타입,     컬럼2 데이터타입,     컬럼3 데이터타입,     ... ); 

위의 예시에서 "테이블명"은 생성할 테이블의 이름을 나타내며, "컬럼1", "컬럼2" 등은 테이블의 컬럼명을 나타냅니다. "데이터타입"은 해당 컬럼에 저장할 데이터의 종류를 설정하는 부분입니다. 예를 들어, "컬럼1"에는 숫자를 저장하기 위해 INTEGER 데이터타입을 사용할 수 있습니다.

1-1. 컬럼 데이터타입

PostgreSQL에서는 다양한 데이터타입을 제공합니다. 대표적인 데이터타입 몇 가지를 살펴보겠습니다.

  • INTEGER: 정수값을 저장하는 타입
  • VARCHAR(n): 최대 길이가 n인 가변 길이 문자열을 저장하는 타입
  • DATE: 날짜를 저장하는 타입
  • BOOLEAN: 참(True) 또는 거짓(False) 값을 저장하는 타입

1-2. PRIMARY KEY 설정

테이블의 PRIMARY KEY는 각 행을 고유하게 식별하는 역할을 합니다. PRIMARY KEY는 여러 컬럼으로 구성될 수도 있습니다. 예를 들어, 다음과 같이 사용할 수 있습니다.

 CREATE TABLE 테이블명 (     컬럼1 데이터타입,     컬럼2 데이터타입,     ...     PRIMARY KEY (컬럼1, 컬럼2) ); 

위의 예시에서 "컬럼1"과 "컬럼2"는 테이블의 PRIMARY KEY로 설정되며, 두 컬럼의 조합이 유일한 값을 가져야 합니다.

2. 데이터 삽입

테이블을 생성한 후에는 INSERT INTO 문을 사용하여 데이터를 테이블에 삽입할 수 있습니다. 예를 들어, 다음과 같이 사용합니다.

 INSERT INTO 테이블명 (컬럼1, 컬럼2, 컬럼3) VALUES (값1, 값2, 값3); 

위의 예시에서 "테이블명"은 데이터를 삽입할 테이블의 이름을 나타내며, "컬럼1, 컬럼2, 컬럼3"은 데이터를 삽입할 컬럼들을 나타냅니다. "값1, 값2, 값3"은 해당 컬럼에 삽입할 실제 값들입니다.

2-1. 다중 행 삽입

INSERT INTO 문을 사용하여 한 번에 여러 행을 삽입할 수도 있습니다. 예를 들어, 다음과 같이 사용합니다.

 INSERT INTO 테이블명 (컬럼1, 컬럼2, 컬럼3) VALUES (값1, 값2, 값3),        (값4, 값5, 값6),        (값7, 값8, 값9); 

위의 예시에서는 한 번에 세 개의 행을 삽입하는 방법을 보여줍니다. 추가적인 행을 삽입하려면 콤마로 구분하여 다음 행을 추가하면 됩니다.

2-2. 특정 컬럼에 데이터 삽입

INSERT INTO 문에서 특정 컬럼에만 데이터를 삽입하려면 해당 컬럼을 명시하고 나머지 컬럼에는 DEFAULT 값을 지정하면 됩니다. 예를 들어, 다음과 같이 사용합니다.

 INSERT INTO 테이블명 (컬럼1, 컬럼2) VALUES (값1, DEFAULT); 

위의 예시에서는 "컬럼1"에는 실제 값을 삽입하고, "컬럼2"에는 DEFAULT 값을 삽입하는 방법을 보여줍니다. 이렇게 하면 "컬럼2"는 해당 테이블의 DEFAULT 값으로 자동 삽입됩니다.

3. 마무리

PostgreSQL에서 테이블 생성과 데이터 삽입은 기본적인 데이터베이스 작업 중 가장 필수적인 부분입니다. 이번 포스트에서는 테이블 생성과 데이터 삽입에 대한 기본적인 내용을 다뤄보았습니다. 다음 포스트에서는 더 다양한 데이터베이스 작업에 대해 알아보겠습니다.

반응형

'DB' 카테고리의 다른 글

인덱스의 역할과 성능 향상  (0) 2023.12.22
[PostgreSQL]데이터 조회 및 필터링  (0) 2023.12.22
분산 데이터베이스  (0) 2023.12.21
데이터베이스 저널링  (0) 2023.12.21
데이터베이스 용어 정리  (0) 2023.12.21