이 섹션에서는 기존 클라이언트 라이브러리를 프로토콜 3.0으로 업데이트하려는 개발자를 위한 빠른 변경 사항 체크리스트를 제공합니다.
초기 시작 패킷은 고정 형식 대신 유연한 문자열 목록 형식을 사용합니다. 이제 런타임 매개변수에 대한 세션 기본값을 시작 패킷에서 직접 지정할 수 있습니다. (실제로는 다음을 사용하기 전에 그렇게 할 수 있습니다.옵션필드, 그러나 너비가 제한된 경우옵션그리고 값에 공백을 인용할 방법이 없기 때문에 매우 안전한 기술은 아니었습니다.)
이제 모든 메시지에는 메시지 유형 바이트 바로 뒤에 길이 카운트가 있습니다(유형 바이트가 없는 시작 패킷 제외). 또한 PasswordMessage에는 이제 유형 바이트가 있습니다.
ErrorResponse 및 통지응답('E' 그리고 'N') 메시지에는 이제 클라이언트 코드가 원하는 상세 수준의 오류 메시지를 조합할 수 있는 여러 필드가 포함되어 있습니다. 개별 필드는 일반적으로 개행 문자로 끝나지 않는 반면, 이전 프로토콜에서 전송된 단일 문자열은 항상 그랬습니다.
ReadyForQuery('Z') 메시지에는 거래 상태 표시기가 포함되어 있습니다.
BinaryRow와 DataRow 메시지 유형 간의 구분이 사라졌습니다. 단일 DataRow 메시지 유형은 모든 형식의 데이터를 반환하는 데 사용됩니다. DataRow의 레이아웃이 더 쉽게 구문 분석할 수 있도록 스포츠 토토 사이트되었습니다. 또한 이진 값의 표현이 스포츠 토토 사이트되었습니다. 더 이상 서버의 내부 표현과 직접적으로 연결되지 않습니다.
새로운 것이 있습니다“확장 쿼리”하위 프로토콜은 프런트엔드 메시지 유형 Parse, Bind, Execute, Description, Close, Flush 및 Sync와 백엔드 메시지 유형 ParseComplete, BindComplete, PortalSuspended, ParameterDescription, NoData 및 CloseComplete를 추가합니다. 기존 클라이언트는 이 하위 프로토콜에 대해 걱정할 필요가 없지만 이를 활용하면 성능이나 기능이 향상될 수 있습니다.
복사데이터는 이제 CopyData 및 CopyDone 메시지로 캡슐화됩니다. 오류를 복구하는 잘 정의된 방법이 있습니다.복사. 특별한“\.”마지막 줄은 더 이상 필요하지 않으며 도중에는 전송되지 않습니다.복사. (아직도 터미네이터로 인식됩니다.복사, 그러나 그 사용은 더 이상 사용되지 않으며 결국 제거될 예정입니다.) Binary복사지원됩니다. CopyInResponse 및 CopyOutResponse 메시지에는 열 수와 각 열의 형식을 나타내는 필드가 포함됩니다.
FunctionCall 및 FunctionCallResponse 메시지의 레이아웃이 변경되었습니다. FunctionCall은 이제 함수에 NULL 인수 전달을 지원할 수 있습니다. 또한 매개변수 전달과 텍스트 또는 바이너리 형식의 결과 검색을 처리할 수 있습니다. 내부 서버 데이터 표현에 대한 직접적인 액세스를 제공하지 않기 때문에 FunctionCall을 잠재적인 보안 허점으로 간주할 이유가 더 이상 없습니다.
백엔드가 ParameterStatus('를 보냅니다.S') 클라이언트 라이브러리에 관심이 있는 것으로 간주되는 모든 매개변수에 대한 연결 시작 중 메시지입니다. 이후 이러한 매개변수에 대한 활성 값이 스포츠 토토 사이트될 때마다 ParameterStatus 메시지가 전송됩니다.
RowDescription('T') 메시지에는 설명된 행의 각 열에 대한 새 테이블 OID 및 열 번호 필드가 포함됩니다. 또한 각 열의 형식 코드도 표시됩니다.
커서응답('P') 메시지는 더 이상 백엔드에서 생성되지 않습니다.
NotificationResponse('A') 메시지에는 다음을 전달할 수 있는 추가 문자열 필드가 있습니다.“페이로드”다음에서 전달된 문자열알림이벤트 발신자.
EmptyQueryResponse('I') 빈 문자열 매개변수를 포함하는 데 사용되는 메시지입니다. 이 내용은 삭제되었습니다.