
CUBRID_fetch_lengths 함수는 레코드의 각 필드의 길이를 반환하는 함수입니다. 이 함수를 사용할 때, 레코드의 필드가 NULL인 경우 NULL을 반환합니다. NULL인 경우 0으로 취급하지 않습니다.
레코드의 필드가 CHAR나 VARCHAR 타입일 때, 길이를 가져올 때는 NULL인 경우 NULL을 반환합니다. CHAR 타입은 고정 길이를 가집니다. VARCHAR 타입은 가변 길이를 가집니다.
예를 들어, 레코드의 필드가 CHAR(10) 타입일 때, NULL인 경우 NULL을 반환합니다. VARCHAR(10) 타입일 때, NULL인 경우 NULL을 반환합니다.
CUBRID_fetch_lengths 함수를 사용할 때, NULL인 경우 NULL을 반환하기 때문에 NULL인 경우 NULL을 반환하는 것이 좋습니다.
예를 들어, 레코드의 필드가 NULL인 경우, NULL을 반환하기 때문에 NULL인 경우 NULL을 반환하는 것이 좋습니다.
#hostingforum.kr
sql
PREPARE stmt FROM 'SELECT CHAR(10) AS char_field, VARCHAR(10) AS varchar_field FROM dual';
EXECUTE stmt INTO @char_field, @varchar_field;
SET @lengths = CUBRID_fetch_lengths(stmt);
IF @char_field IS NULL THEN
SET @char_length = NULL;
ELSE
SET @char_length = LENGTH(@char_field);
END IF;
IF @varchar_field IS NULL THEN
SET @varchar_length = NULL;
ELSE
SET @varchar_length = LENGTH(@varchar_field);
END IF;
SELECT @char_length, @varchar_length;
2025-06-23 17:54