2025년 9월 25일:토토 커뮤니티 : 토토
이 문서는 지원되지 않는 롤 토토 버전에 대한 것입니다.
당신은 다음과 같은 페이지를 보고 싶을 수도 있습니다.토토 결과 PostgreSQL : 문서 : 17 : 선언버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

선언

이름

DECLARE -- 커서 정의

시놉시스

선언이름[ 바이너리 ] [ 민감하지 않음 ] [ [ 아니오 ] 스크롤 ]
    커서 [  함께 |  없이 ] 보류 ] FOR질의[  읽기 전용 | 업데이트 [ OF [, ...] ] } ]

설명

선언사용자가 생성할 수 있도록 허용합니다. 적은 수의 행을 검색하는 데 사용할 수 있는 커서 더 큰 쿼리의 시간 초과. 커서는 다음 중 하나로 데이터를 반환할 수 있습니다. 텍스트 또는 이진 형식을 사용하여가져오기.

일반 커서는 a와 같은 텍스트 형식으로 데이터를 반환합니다.선택생산할 것입니다. 데이터는 기본적으로 바이너리 형식으로 저장되므로 시스템에서 변환을 수행해야 합니다. 텍스트 형식을 생성합니다. 정보가 다시 들어오면 텍스트 형식인 경우 클라이언트 응용 프로그램은 이를 텍스트 형식으로 변환해야 할 수도 있습니다. 조작할 수 있는 바이너리 형식입니다. 게다가 본문에 있는 데이터도 형식은 바이너리 형식보다 크기가 더 큰 경우가 많습니다. 바이너리 커서는 데이터를 이진 표현으로 반환합니다. 더 쉽게 조작할 수 있습니다. 그럼에도 불구하고 표시하려는 경우 어쨌든 데이터를 텍스트로 가져오면 텍스트 형식으로 검색하면 저장됩니다. 클라이언트 측에서 약간의 노력을 기울였습니다.

예를 들어, 쿼리가 정수 열을 사용하면 다음과 같은 문자열을 얻게 됩니다.1기본 커서를 사용하는 반면 바이너리를 사용하는 경우 커서를 사용하면 내부 정보가 포함된 4바이트 필드가 표시됩니다. 값의 표현(빅엔디안 바이트 순서).

바이너리 커서는 주의해서 사용해야 합니다. 많은 응용 프로그램, 포함psql, 준비되지 않았습니다. 바이너리 커서를 처리하고 데이터가 텍스트로 다시 돌아올 것으로 기대합니다. 형식.

참고:클라이언트 응용프로그램이 다음을 사용할 때"확장 쿼리"발행할 프로토콜 에가져오기명령, 바인드 프로토콜 메시지는 데이터를 텍스트로 검색할지 여부를 지정합니다. 바이너리 형식. 이 선택은 커서가 이동하는 방식을 재정의합니다. 정의되어 있습니다. 따라서 이진 커서의 개념은 다음과 같습니다. 확장 쿼리 프로토콜을 사용하면 더 이상 사용되지 않습니다. 모든 커서는 텍스트 또는 바이너리로 처리됩니다.

매개변수

이름

생성될 커서의 이름입니다.

바이너리

커서가 데이터를 바이너리가 아닌 바이너리로 반환하도록 합니다. 텍스트 형식으로.

민감함

커서에서 검색된 데이터가 다음과 같아야 함을 나타냅니다. 커서 밑에 있는 테이블 업데이트의 영향을 받지 않음 커서가 존재하는 동안. 에서롤 토토, 모든 커서는 둔감하다; 이 키워드는 현재 아무런 효과가 없으며 SQL 표준과의 호환성을 위해 존재합니다.

스크롤
스크롤 없음

스크롤다음을 지정합니다. 커서는 비순차적 행을 검색하는 데 사용될 수 있습니다. 패션(예: 뒤로). 복잡성에 따라 쿼리 실행 계획, 지정스크롤성능 저하를 부과할 수 있습니다. 쿼리 실행 시간입니다.아니요 스크롤커서를 다음 작업에 사용할 수 없음을 지정합니다. 비순차적 방식으로 행을 검색합니다. 기본값은 어떤 경우에는 스크롤을 허용합니다. 이건 같지 않아 지정스크롤. 참조참고자세한 내용은.

보류 있음
보류 없음

보류 있음다음을 지정합니다. 커서는 트랜잭션 이후에도 계속 사용될 수 있습니다. 성공적으로 커밋되었습니다.보류 없음커서가 이를 생성한 트랜잭션 외부에서는 사용할 수 없습니다. 둘 다 아니라면보류 없음아니요보류 있음지정되었습니다.보류 없음기본값입니다.

질의

A 선택그 명령은 커서가 반환할 행을 제공합니다. 참조PostgreSQL : 문서 : 8.1 : 스포츠 토토 사이트더 자세히 알아보기 유효한 쿼리에 대한 정보입니다.

읽기 전용
업데이트용

읽기 전용다음을 나타냅니다. 커서는 읽기 전용 모드로 사용됩니다.업데이트용커서가 테이블을 업데이트하는 데 사용됩니다. 커서 업데이트가 아니기 때문에 현재 다음에서 지원됩니다.롤 토토, 지정업데이트용오류 메시지가 발생하며 지정읽기 전용없음 효과.

커서로 업데이트할 열. 커서 이후 업데이트는 현재 지원되지 않습니다.롤 토토, 그업데이트용절로 인해 오류가 발생함 메시지.

핵심 단어바이너리, 민감함스크롤어떤 순서로든 나타날 수 있습니다.

참고

그렇지 않은 경우보류 있음이 지정되었습니다. 이 명령으로 생성된 커서는 현재 거래. 따라서,선언없이보류 있음외부에서는 쓸모가 없습니다 트랜잭션 블록: 커서는 다음 시점까지만 유지됩니다. 성명서의 완성. 그러므로롤 토토이 명령이 실행되면 오류를 보고합니다. 트랜잭션 블록 외부에서 사용됩니다. 사용시작, 커밋그리고롤백트랜잭션을 정의하기 위해 차단합니다.

만약보류 있음이 지정되었으며 커서를 생성한 트랜잭션이 성공적으로 커밋되면 커서는 후속 트랜잭션에서 계속 액세스할 수 있습니다. 같은 세션. (그러나 생성된 트랜잭션이 중단된 경우, 커서가 제거됩니다.) 커서는보류 있음명시적인 경우 닫힙니다.닫기명령이 실행되었거나 세션이 끝납니다. 현재 구현에서는 유지된 커서는 임시 파일이나 메모리 영역에 복사되므로 후속 거래에도 계속 사용할 수 있습니다.

스크롤옵션을 지정해야 합니다. 뒤로 가져오는 데 사용할 커서를 정의할 때. 이 SQL 표준에서 필요합니다. 그러나 호환성을 위해 이전 버전,롤 토토없이 뒤로 가져오기를 허용합니다스크롤, 커서의 쿼리 계획이 단순한 경우 이를 지원하는 데 추가 오버헤드가 필요하지 않을 정도로 충분합니다. 그러나, 응용 프로그램 개발자는 이전 버전 사용에 의존하지 않는 것이 좋습니다. 로 생성되지 않은 커서에서 가져옵니다.스크롤. 만일스크롤 없음입니다 지정하면 어떠한 경우에도 역방향 가져오기가 허용되지 않습니다.

SQL 표준은 삽입된 커서에 대해서만 규정합니다.SQL.롤 토토서버가 구현하지 않음열기커서에 대한 설명; 커서는 선언되면 공개된 것으로 간주됩니다. 그러나ECPG, Embedded SQL 전처리기롤 토토, 지원 다음과 관련된 표준 SQL 커서 규칙을 포함합니다.선언그리고열기문장.

커서를 선언하려면:

선택 * FROM 영화에 대한 liahona 커서 선언;

참조PostgreSQL : 문서 : 8.1 : 토토 베이더 보기 커서 사용법의 예.

호환성

SQL 표준은 삽입된 커서만 허용합니다.SQL및 모듈에서.포스트그레SQL커서를 다음과 같이 허용합니다. 대화형으로 사용됩니다.

SQL 표준에서는 커서가 테이블 데이터를 업데이트할 수 있습니다. 모두롤 토토커서를 읽었습니다. 만.

바이너리 커서는 a롤 토토확장.