Skip to main content

설명

ODBCDriver2 포맷은 HTTP를 통해 ClickHouse용 ODBC 드라이버로 쿼리 결과를 전송하는 데 사용되는 바이너리 출력 전용 포맷입니다. 드라이버는 default_formatODBCDriver2로 설정하여 이 포맷을 요청하며, 일반적으로 사용자가 직접 선택하지는 않습니다. 스트림의 모든 정수는 리틀 엔디언 바이트 순서로 인코딩된 부호 있는 32비트 값입니다. 문자열은 바이트 길이와 그 뒤에 이어지는 바이트로 인코딩됩니다. 출력 구조는 다음과 같습니다.
  1. 뒤이어 2개의 헤더 행이 있음을 나타내는 값 2입니다.
  2. number_of_columns + 1, 문자열 name, 각 컬럼명을 포함하는 이름 헤더입니다.
  3. number_of_columns + 1, 문자열 type, 각 ClickHouse 데이터 타입 이름을 포함하는 타입 헤더입니다. 이 타입 이름에서는 LowCardinality 래퍼가 제거됩니다.
  4. 데이터 행입니다. 각 행에는 결과 컬럼마다 텍스트로 직렬화되고 길이 접두사가 붙은 값 1개가 포함됩니다. 데이터 행에는 별도의 행 또는 컬럼 수가 포함되지 않으며, 스트림은 EOF에서 끝납니다.
NULL 값은 길이 -1로 인코딩되며, 비어 있는 non-NULL 문자열의 길이는 0입니다. 합계가 있는 경우 동일한 행 인코딩을 사용하며 일반 행 뒤에 이어집니다.

사용 예시

다음 쿼리는 이 포맷의 테스트에서 다루는 값을 보여 주는 예시입니다:
결과가 바이너리이므로 터미널이 아닌 파일로 리디렉션하십시오:
일반적인 사용 시 드라이버는 HTTP 요청에 default_format=ODBCDriver2를 추가하고 응답을 디코딩합니다.

포맷 설정

ODBCDriver2는 개별 값에 표준 텍스트 직렬화 설정을 사용합니다. 포맷 자체에 특화된 설정은 없습니다.
마지막 수정일 2026년 8월 14일