Reputation: 23
i have below script but I need to change the case to ascii I don't get it how I need to do it. C Can you please help?
If someone can rewrite my code with the ascii it will be great because I don't see it :( Thank you for your kind help.
SET SERVEROUTPUT ON;
CREATE OR REPLACE FUNCTION convert_number(
p_resultaat IN VARCHAR2)
RETURN VARCHAR2
IS
-- variabelen
v_newStudentNumber VARCHAR2(255);
v_letter VARCHAR2(2);
BEGIN
FOR i IN 1..length(p_resultaat)
LOOP
v_letter := SUBSTR(p_resultaat, i, 1);
v_newStudentNumber := v_newStudentNumber ||
CASE v_letter
WHEN 'A' THEN
'16'
WHEN 'B' THEN
'17'
WHEN 'C' THEN
'18'
WHEN 'D' THEN
'19'
WHEN 'E' THEN
'20'
WHEN 'F' THEN
'21'
WHEN 'G' THEN
'22'
WHEN 'H' THEN
'23'
WHEN 'I' THEN
'24'
WHEN 'J' THEN
'25'
WHEN 'K' THEN
'26'
WHEN 'L' THEN
'27'
WHEN 'M' THEN
'28'
WHEN 'N' THEN
'29'
WHEN 'O' THEN
'30'
WHEN 'P' THEN
'31'
WHEN 'Q' THEN
'32'
WHEN 'R' THEN
'33'
WHEN 'S' THEN
'34'
WHEN 'T' THEN
'35'
WHEN 'U' THEN
'36'
WHEN 'V' THEN
'37'
WHEN 'W' THEN
'38'
WHEN 'X' THEN
'39'
WHEN 'Y' THEN
'40'
WHEN 'Z' THEN
'41'
ELSE
v_letter
END;
END LOOP;
RETURN v_newStudentNumber;
END convert_number;
Upvotes: 1
Views: 1270
Reputation: 277
you can achieve by select ASCII('a') from dual;
Try this code:-
create or replace
FUNCTION convert_number(
p_resultaat IN VARCHAR2)
RETURN VARCHAR2
IS
-- variabelen
v_newStudentNumber VARCHAR2(255);
v_letter VARCHAR2(2);
BEGIN
FOR i IN 1..length(p_resultaat)
LOOP
V_Letter := Substr(P_Resultaat, I, 1);
V_Newstudentnumber := V_Newstudentnumber ||
ascii(v_letter);
-- END;
END LOOP;
Return V_Newstudentnumber;
END convert_number;
Upvotes: 1