I m giving Source, Destination and Age. Write a procedure or
function, it will give to u this source to destination
tickets are available or not, if available then check this
person is senior citizen or not,if this person is senior
citizen then give some discount.
PLZ give this answer......
Thanks advance.....
Answers were Sorted based on User's Feedback
Answer / aritra
TRY THIS ONE ...
CREATE TABLE FARE_DETAILS
( SOURCE VARCHAR2(100),
DESTINATION VARCHAR2(100),
FARES NUMBER(10,2));
create or replace procedure PROC_TCKT_RESERVATION
(m_source IN VARCHAR2,
m_destination IN VARCHAR2,
m_age IN NUMBER
)
is
v_source FARE_DETAILS.SOURCE%TYPE;
v_destination FARE_DETAILS.DESTINATION%TYPE;
v_fares FARE_DETAILS.FARES%TYPE;
v_fares_out FARE_DETAILS.FARES%TYPE;
begin
IF m_source= m_destination THEN
RAISE_APPLICATION_ERROR(-20001,'SOURCE, DESTINATION
SHOULD NOT BE SAME');
END IF;
SELECT FARES
INTO v_fares
FROM FARE_DETAILS
WHERE SOURCE= m_source
AND DESTINATION= m_destination ;
IF m_age>=60 THEN
v_fares_out:= (v_fares-v_fares*0.3);
DBMS_OUTPUT.PUT_LINE('GIVEN AGE IS FOR SENIOR CITIZEN,
FARE IS '||v_fares_out);
ELSE
v_fares_out:= v_fares;
DBMS_OUTPUT.PUT_LINE(' FARE IS '||v_fares_out);
END IF;
EXCEPTION
WHEN NO_DATA_FOUND THEN
RAISE_APPLICATION_ERROR(-20001,'NO DATA FOUND ..ENTER
COREECT SOURCE/DESTINATION');
end PROC_TCKT_RESERVATION;
| Is This Answer Correct ? | 13 Yes | 1 No |
Answer / kavitha nedigunta
CREATE TABLE FARE_DETAILS
( SOURCE VARCHAR2(100),
DESTINATION VARCHAR2(100),
FARES NUMBER(10,2));
CREATE OR REPLACE FUNCTION TCKT_RESERVATION_FUN
(
I_SOURCE IN FARE_DETAILS.SOURCE%TYPE,
I_DESTINATION IN FARE_DETAILS.DESTINATION%TYPE,
I_AGE IN FARE_DETAILS.FARES%TYPE
) RETURN VARCHAR2
AS
L_OUT_PUT VARCHAR2(2000) DEFAULT NULL;
L_FARES FARE_DETAILS.FARES%TYPE;
BEGIN
IF UPPER(TRIM(I_SOURCE)) = UPPER(TRIM(I_DESTINATION)) THEN
l_OUT_PUT := 'SOURCE, DESTINATION SHOULD NOT BE SAME';
RETURN l_OUT_PUT;
END IF;
SELECT FARES INTO L_FARES FROM FARE_DETAILS
WHERE UPPER(TRIM(SOURCE)) = UPPER(TRIM(I_SOURCE))
AND UPPER(TRIM(DESTINATION)) = UPPER(TRIM
(I_DESTINATION));
IF I_AGE >=60 THEN
l_OUT_PUT:= (L_FARES-L_FARES*0.3);
ELSE
l_OUT_PUT := L_FARES;
END IF;
RETURN l_OUT_PUT;
EXCEPTION
WHEN NO_DATA_FOUND THEN
l_OUT_PUT :='NO DATA FOUND ..ENTER COREECT
SOURCE/DESTINATION';
RETURN l_OUT_PUT;
END TCKT_RESERVATION_FUN;
| Is This Answer Correct ? | 5 Yes | 1 No |
Is it possible to create the following trigger: before or after update trigger for each row?
What is trigger explain with example?
What is meant by <> in sql?
what is the need of the cursor attribute notfound..(because using found attribute we can complete the task......found + negation operator = not found )
What is the use of sqlerrd 3?
how many sql ddl commands are supported by 'mysql'? : Sql dba
Can we rename a column in the output of sql query?
What is the primary use of normalization?
How do you define a foreign key?
Can I join the same table twice?
What is consistency?
how to select alphabets in a one column , for this the table name is PA_TASKS and column name is TASK_NUMBER, In TASK_NUMBER the data like this 1.1.3NN,1.1.4NN,1.5.1NN,1.3.2NE,1.5NN,1NN,1.2NE,1CE , For this i need to disply output as NN,NN,NN,NE,NN,NN,NE,CE, Its some urgent requirement ,thanks in advance
Oracle (3259)
SQL Server (4518)
MS Access (429)
MySQL (1402)
Postgre (483)
Sybase (267)
DB Architecture (141)
DB Administration (291)
DB Development (113)
SQL PLSQL (3330)
MongoDB (502)
IBM Informix (50)
Neo4j (82)
InfluxDB (0)
Apache CouchDB (44)
Firebird (5)
Database Management (1411)
Databases AllOther (288)