6.1. 데이터 롤 토토#

테이블이 생성되면 데이터가 포함되지 않습니다. 데이터베이스를 활용하기 전에 가장 먼저 해야 할 일은 데이터를 롤 토토하는 것입니다. 데이터는 한 번에 한 행씩 롤 토토됩니다. 단일 명령에 두 개 이상의 행을 롤 토토할 수도 있지만 완전한 행이 아닌 항목을 롤 토토하는 것은 불가능합니다. 일부 열 값만 알고 있더라도 완전한 행을 생성해야 합니다.

새 행을 생성하려면 다음을 사용하십시오.롤 토토명령. 이 명령에는 테이블 이름과 열 값이 필요합니다. 예를 들어, 다음의 제품 테이블을 생각해 보세요.토토 사이트 : 문서 : 18 : 5 장 데이터 정의:

테이블 제품 생성(
    product_no 정수,
    이름 텍스트,
    가격 숫자
);

행을 롤 토토하는 명령의 예는 다음과 같습니다:

제품 값에 롤 토토(1, '치즈', 9.99);

데이터 값은 테이블에 나타나는 열의 순서대로 쉼표로 구분되어 나열됩니다. 일반적으로 데이터 값은 리터럴(상수)이지만 스칼라 표현식도 허용됩니다.

위 구문에는 테이블의 열 순서를 알아야 한다는 단점이 있습니다. 이를 방지하려면 열을 명시적으로 나열할 수도 있습니다. 예를 들어, 다음 명령은 모두 위의 명령과 동일한 효과를 갖습니다.

INSERT INTO 제품(제품_번호, 이름, 가격) VALUES (1, '치즈', 9.99);
INSERT INTO 제품 (이름, 가격, 제품_번호) VALUES ('치즈', 9.99, 1);

많은 사용자는 항상 열 이름을 나열하는 것이 좋은 습관이라고 생각합니다.

모든 열에 대한 값이 없으면 일부를 생략할 수 있습니다. 이 경우 열은 기본값으로 채워집니다. 예를 들면:

INSERT INTO 제품 (제품_번호, 이름) VALUES (1, '치즈');
제품 값에 롤 토토(1, '치즈');

두 번째 형태는 aPostgreSQL확장. 왼쪽부터 열을 주어진 만큼의 값으로 채우고 나머지는 기본값으로 설정됩니다.

명확하게 하기 위해 개별 열 또는 전체 행에 대해 명시적으로 기본값을 요청할 수도 있습니다.

INSERT INTO 제품(제품_번호, 이름, 가격) VALUES(1, '치즈', DEFAULT);
제품에 기본 값을 롤 토토하세요.

단일 명령으로 여러 행을 롤 토토할 수 있습니다:

INSERT INTO 제품(제품_번호, 이름, 가격) VALUES
    (1, '치즈', 9.99),
    (2, '빵', 1.99),
    (3, '우유', 2.99);

쿼리 결과를 롤 토토하는 것도 가능합니다(행 없음, 한 행 또는 여러 행일 수 있음):

INSERT INTO 제품(제품_번호, 이름, 가격)
  신제품_제품에서 제품_번호, 이름, 가격을 선택하세요.
    release_date = '오늘';

이것은 SQL 쿼리 메커니즘의 모든 기능을 제공합니다. (토토 결과 : 문서 : 18 : 챕터 7. 쿼리) 롤 토토할 행을 계산하기 위한 것입니다.

동시에 많은 데이터를 롤 토토할 때 다음을 사용하는 것을 고려하십시오.복사명령. 처럼 유연하지 않습니다.롤 토토명령이지만 더 효율적입니다. 참조PostgreSQL : 문서 : 18 : 14.4. 배트맨 토토베이스 채우기대량 로딩 성능 개선에 대한 자세한 내용을 확인하세요.

수정사항 제출

문서에 올바르지 않은 내용이 있으면 일치하지 않습니다. 특정 기능에 대한 경험이 있거나 추가 설명이 필요한 경우 이용해주세요이 양식문서 문제를 보고합니다.