O'Reilly logo

Oracle PL/SQL Programming: A Developer's Workbook by Andrew Odewahn, Steven Feuerstein

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Intermediate

Q:

18-21.

All that’s displayed is “Sound effects” because RTRIM starts at the end of the string and removes all occurrences of any of the characters it is to remove, until it comes to one that is not in the list. Note that the actual length of the output is 14 (it includes a trailing blank).

Q:

18-22.

This string is displayed:

ABCDEF

Q:

18-23.

Here is a suggested function:

CREATE OR REPLACE FUNCTION ascii_converter ( p_char IN VARCHAR2 )
                  RETURN INT IS
BEGIN
  -- The ASCII function returns the numeric
  -- equivalent of a character
  RETURN(ASCII(p_char));
END;

Q:

18-24.

Here you go:

CREATE OR REPLACE FUNCTION sound_the_same (
                                           p_string1 IN VARCHAR2,
                                           p_string2 VARCHAR2 )
                  RETURN BOOLEAN IS

  -- always be pessimistic
  v_ret_val BOOLEAN := FALSE;

BEGIN
  -- Compare the soundex returns for the two strings
  IF SOUNDEX(p_string1) = SOUNDEX(p_string2) THEN
    v_ret_val := TRUE;
  ELSE
    v_ret_val := FALSE;
  END IF;
  RETURN(v_ret_val);
END;

Q:

18-25.

Try this one:

CREATE OR REPLACE FUNCTION crlf RETURN VARCHAR2 IS
BEGIN
  -- Simply return the character associated with
  -- sequence 10 for a carriage return/line feed
  RETURN(CHR(10));
END;

CREATE OR REPLACE FUNCTION tab RETURN VARCHAR2 IS
BEGIN
  -- Simply return the character associated with
  -- sequence 10 for a carriage return/line feed
  RETURN(CHR(9));
END;

Q:

18-26.

The REPLACE function can make the desired switch in the string:

DECLARE the_text VARCHAR2(100); BEGIN -- It is important to first replace all single quotes with two quotes -- to include the quote in the string ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required