배트맨 토토 — 로컬 튜플을 사용하여 INSERT 문을 작성하고 기본 키 필드 값을 대체 제공된 값으로 바꿉니다.
배트맨 토토(텍스트 상대 이름,
int2벡터 Primary_key_attnums,
정수 num_primary_key_atts,
텍스트[] src_pk_att_vals_array,
text[] tgt_pk_att_vals_array)는 텍스트를 반환합니다.
배트맨 토토로컬 테이블을 원격 데이터베이스에 선택적으로 복제하는 데 유용할 수 있습니다. 기본 키를 기반으로 로컬 테이블에서 행을 선택한 다음 SQL을 작성합니다.삽입해당 행을 복제하지만 기본 키 값이 마지막 인수의 값으로 대체되는 명령입니다. (행의 정확한 복사본을 만들려면 마지막 두 인수에 동일한 값을 지정하면 됩니다.)
relname예를 들어 지역 관계의 이름foo또는myschema.mytab. 이름이 대소문자를 혼합하거나 특수 문자를 포함하는 경우 큰따옴표를 포함합니다(예:"푸바"; 따옴표가 없으면 문자열은 소문자로 접혀집니다.
primary_key_attnums기본 키 필드의 속성 번호(1부터 시작), 예1 2.
num_primary_key_atts기본 키 필드의 수입니다.
src_pk_att_vals_array로컬 튜플을 조회하는 데 사용되는 기본 키 필드의 값. 각 필드는 텍스트 형식으로 표시됩니다. 이러한 기본 키 값이 포함된 로컬 행이 없으면 오류가 발생합니다.
tgt_pk_att_vals_array결과에 배치될 기본 키 필드의 값삽입명령. 각 필드는 텍스트 형식으로 표시됩니다.
요청된 SQL 문을 텍스트로 반환합니다.
현재PostgreSQL9.0, 속성 번호primary_key_attnums는 에서 열의 위치에 해당하는 논리적 열 번호로 해석됩니다.SELECT * FROM relname. 이전 버전에서는 숫자를 물리적 열 위치로 해석했습니다. 테이블 수명 동안 표시된 열 왼쪽에 있는 열이 삭제된 경우 차이가 있습니다.
SELECT 배트맨 토토('foo', '1 2', 2, '"1", "a"', '"1", "b''a"');
배트맨 토토
-------------------------------------
foo(f1,f2,f3) VALUES('1','b''a','1')에 삽입
(1행)