FOR UPDATE 절

FOR UPDATE 절은 SQL 커서를 통해 현재 위치 업데이트 또는 현재 위치 삭제를 위한 레코드를 잠급니다. 포맷은 다음과 같습니다.

복사
FOR UPDATE [OF column_expressions]

column_expressions는 쉼표로 분리된 업데이트할 데이터베이스 테이블의 필드 이름 목록입니다. column_expressions는 옵션이며 무시됩니다.

예제

SALARY 필드의 값이 ₩2,000,000보다 많은 직원 데이터베이스의 모든 레코드를 반환합니다.

복사
SELECT * FROM emp WHERE salary > 2000000 FOR UPDATE OF last_name, first_name, salary

각 레코드를 가져오면 잠겨 있습니다. 레코드가 업데이트되거나 삭제되면 변경사항을 커밋할 때까지 잠금이 적용됩니다. 그렇지 않으면 다음 레코드를 가져올 때 잠금이 해제됩니다.

예제

사용

샘플 SQL

텍스트 상수

복사
SELECT 'CatDog' FROM Salespeople

숫자 상수

복사
SELECT 999 FROM Salespeople

날짜 상수

복사
SELECT DATE '2021-06-05' FROM Salespeople

시간 상수

복사
SELECT TIME '02:49:03' FROM Salespeople

타임스탬프 상수

복사
SELECT TIMESTAMP '2021-06-05 02:49:03' FROM Salespeople

텍스트 열

복사
SELECT Company_Name FROM Sales_Data
SELECT DISTINCT Company_Name FROM Sales_Data

숫자 열

복사
SELECT Amount FROM Sales_Data
SELECT DISTINCT Amount FROM Sales_Data

날짜 열

복사
SELECT Date_Sold FROM Sales_Data
SELECT DISTINCT Date_Sold FROM Sales_Data

시간 열

복사
SELECT Time_Sold FROM Sales_Data
SELECT DISTINCT Time_Sold FROM Sales_Data

타임스탬프 열

복사
SELECT Timestamp_Sold FROM Sales_Data
SELECT DISTINCT Timestamp_Sold FROM Sales_Data

BLOB 열

복사
SELECT Company_Brochures FROM Sales_Data
SELECT GETAS(Company_Logo, 'JPEG') FROM Sales_Data

참고  BLOB는 FileMaker Pro 데이터베이스 파일 컨테이너 필드입니다.

Wildcard *

복사
SELECT * FROM Salespeople
SELECT DISTINCT * FROM Salespeople

예제에서 참고

column은 FileMaker Pro 데이터베이스 파일의 필드에 대한 참조입니다 (필드에는 여러 고유 값이 포함되어 있을 수 있습니다.)

별표(*) 와일드카드 문자는 "모든 것"의 약칭입니다. 예를 들어, SELECT * FROM Salespeople의 결과는 Salespeople 테이블의 모든 열입니다. 예를 들어, SELECT DISTINCT * FROM Salespeople의 결과는 Salespeople 테이블(중복 없음)의 고유한 모든 행입니다.

  • FileMaker 소프트웨어는 빈 문자열에 데이터를 저장하지 않으므로 다음 쿼리는 항상 레코드를 반환하지 않습니다.

    복사
    SELECT * FROM test WHERE c =''
    SELECT * FROM test WHERE c <>''
  • 이진 데이터를 포함한 SELECT를 사용하는 경우, GetAs() 함수를 사용하여 반환할 스트림을 지정해야 합니다. 추가 정보는 컨테이너 필드의 콘텐츠 검색하기: CAST() 함수 및 GetAs() 함수를 참조하십시오.

컨테이너 필드의 콘텐츠 검색하기: CAST() 함수 및 GetAs() 함수

컨테이너 필드에서 파일 참조 정보, 이진 데이터 또는 특정 파일 유형의 데이터를 검색할 수 있습니다.

  • 파일, 그림 또는 비디오에 대한 파일 경로와 같이 컨테이너 필드에서 파일 참조 정보를 검색하려면 CAST() 함수와 SELECT 문을 사용하십시오.

  • 파일 데이터 또는 JPEG 이진 데이터가 존재하는 경우, GetAs(field name, 'JPEG')를 포함한 SELECT 문은 이진 양식의 데이터를 검색합니다. 그렇지 않은 경우 필드 이름이 포함된 SELECT 문은 NULL을 반환합니다.

예제

파일 참조 정보를 검색하려면 CAST() 함수와 SELECT 문을 사용하십시오.

복사
SELECT CAST(Company_Brochures AS VARCHAR) FROM Sales_Data

이 예제에서는 다음과 같습니다.

  • FileMaker Pro를 사용하여 파일을 컨테이너 필드에 삽입했지만 파일에 대한 참조만 저장한 경우, SQL_VARCHAR을 입력하면 SELECT 문은 파일 참조 정보를 검색합니다.

  • FileMaker Pro를 사용하여 파일의 콘텐츠를 컨테이너 필드에 삽입한 경우, SELECT 문은 파일 이름을 검색합니다.

  • 다른 응용 프로그램의 컨테이너 필드로 파일을 가져오는 경우 SELECT 문은 '?'를 표시합니다(파일은 FileMaker Pro에 Untitled.dat으로 표시됩니다).

다음과 같은 방법으로 SELECT 문과 GetAs() 함수를 사용하여 이진 형식의 데이터를 검색할 수 있습니다.

  • GetAs() 함수를 DEFAULT 옵션과 사용하는 경우 스트림 유형을 명시적으로 정의하지 않아도 컨테이너의 기본 스트림을 검색합니다.

    예제

    복사
    SELECT GetAs(Company_Brochures, DEFAULT) FROM Sales_Data
  • 컨테이너에서 개별 스트림 유형을 검색하려면 데이터를 FileMaker Pro의 컨테이너 필드로 삽입하는 방법을 기반으로 하는 파일의 유형으로 GetAs() 함수를 사용하십시오.

    예제

    삽입 > 파일 명령을 사용하여 데이터를 삽입했다면 GetAs() 함수에 'FILE'을 지정하십시오.

    복사
    SELECT GetAs(Company_Brochures, 'FILE') FROM Sales_Data

    삽입 > 그림 명령을 사용하여 데이터를 삽입했다면 드래그 앤 드롭하거나 클립보드에서 붙이고, 다음 표에 나열된 파일 유형 중 하나를 지정하십시오(예: 'JPEG').

    복사
    SELECT GetAs(Company_Logo, 'JPEG') FROM Company_Icons

    파일 유형

    설명

    'GIFf'

    GIF(Graphics Interchange Format)

    'JPEG'

    사진 이미지

    'TIFF'

    디지털 이미지용 Raster 파일 포맷

    'PDF '

    PDF(Portable Document Format)

    'PNGf'

    비트맵 이미지 포맷