Я не уверен, что не так с моим кодом, я пытаюсь сделать цикл while, который будет извлекать следующие символы в поле (код) с помощью курсора, объявленного в SQL. Цель состоит в том, чтобы получить следующие совпадающие символы с помощью цикла. Затем я хочу вернуть результаты в конце цикла. Цель состоит в том, чтобы сделать частичное совпадение с кодом, если нет точного совпадения. Я никогда раньше не использовал курсоры, поэтому я пытаюсь узнать как можно больше об использовании выборки и курсоров.
EXEC SQL
SELECT field FROM file
WHERE field = :code
UNION
DECLARE UserInput CURSOR FOR
SELECT field FROM file
WHERE field LIKE '%' || :code || '%'
ORDER BY field ASC
OPEN UserInput
FETCH NEXT FROM UserInput
BEGIN
DO WHILE <> %EOF
FETCH NEXT FROM UserInput
END
CLOSE UserInput
DEALLOCATE UserInput;