mysql cursor 예제

augusztus 2, 2019 6:47 du. Közzétette cccccccccccccc

커서는 MySQL의 선언 섹션에 정의된 select 문입니다. 이전 예제와 마찬가지로 이 예제에서는 FETCH를 사용하여 현재 order_num을 o라는 선언된 변수로 검색합니다. 이전 예제와 달리 FETCH는 REPEAT 내에 있으므로 완료될 때까지 반복됩니다(완료 될 때까지 반복됩니다;). 이 작업을 수행하려면 수행된 변수가 DEFAULT 0(false, 완료되지 않음)으로 정의됩니다. 그렇다면 완료되면 어떻게 true로 설정합니까? 대답은 이 문장입니다: CLOSE는 커서에서 사용하는 내부 메모리와 리소스를 확보하므로 더 이상 필요하지 않을 때 모든 커서를 닫아야 합니다. 우리는 다른 수단을 통해이 작업을 수행 할 수 있습니까? 예, 가능합니다. 예를 들어 현재 승/패배 행진을 저장하도록 특별히 설계된 중복 테이블을 만들 수 있습니다. 레코드를 삽입할 때마다 해당 테이블도 업데이트됩니다. 그러나 이것은 너무 번거롭고 너무 오류가 발생하기 쉽습니다. 마지막으로 커서를 닫고 리소스를 해제합니다. 그런 다음 원하는 출력을 반환합니다.

먼저 일부 변수, 직원의 전자 메일을 반복하는 커서 및 NOT FOUND 처리기를 선언합니다. 그것은 저장 절차에 필수적인 구성 요소입니다. C /C ++의 „포인터”또는 PHP의 foreach 문의 이터레이터로 커서를 처리하는 경향이 있습니다. DECLARE 문을 사용하는 경우 발급해야 하는 특정 순서가 있습니다. DECLARE로 정의된 로컬 변수는 커서 또는 처리기가 정의되기 전에 정의되어야 하며 커서 후에 처리기를 정의해야 합니다. 이 순서를 따르지 않으면 오류 메시지가 생성됩니다. 두 개 이상의 행을 반환하는 SELECT 문을 처리하려면 커서를 만들고 조작해야 합니다. 커서는 SELECT 문에서 반환된 결과 집합에 프로그래밍 방식으로 액세스를 제공하는 개체입니다. 커서를 사용하여 결과 집합의 행을 반복하고 각 행에 대해 개별적으로 작업을 수행합니다. 커서를 연 후 FETCH 문을 사용하여 각 행에 개별적으로 액세스할 수 있습니다. FETCH는 검색할 내용(원하는 열)과 검색된 데이터를 저장해야 하는 위치를 지정합니다.

또한 커서 내의 내부 행 포인터를 진행하여 다음 FETCH 문이 다음 행을 검색합니다(동일한 행이 아닌 연속). 그런 다음 OPEN 문을 사용하여 커서를 엽니다. OPEN 문은 커서에 대한 결과 집합을 초기화하므로 결과 집합에서 행을 가져오기 전에 OPEN 문을 호출해야 합니다. 위의 예에서 curdemo는 입력 값을 허용하는 입력 매개 변수입니다. cur1은 커서에 사용되는 특성입니다.

Kategória: Egyéb kategória

Írta: Gabor