Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 89269
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 10, 20262026-05-10T22:41:24+00:00 2026-05-10T22:41:24+00:00

I’ve got a quick question about default values in PL/SQL functions in Oracle. Take

  • 0

I’ve got a quick question about default values in PL/SQL functions in Oracle. Take this program as an example;

create or replace FUNCTION testFunction (   varNumber IN NUMBER DEFAULT 0 ) RETURN NUMBER AS BEGIN   dbms_output.put_line(varNumber);   RETURN varNumber; END; 

The idea here being that if no value is specified for varNumber when this function is called, then it will take the value of 0.

Now, my problem is that my functions are getting called from a web services layer that will always pass in NULL as the value for parameters which it doesn’t have a value for. Oracle interprets NULL as a value, and so does not initialise varNumber to its default of 0.

I can see why this approach makes sense, but I was wondering if there was a way to override this behaviour, and make it so that if a NULL value is passed, that it causes Oracle to assign the explicit DEFAULT value that is specified in the function header?

I have considered the option of doing a manual check…

IF(varNumber IS NULL) THEN    varNumber := 0; END IF; 

However, there are hundreds of functions where this may be an issue, never mind the large number of parameters per function, and so I’d prefer it if I could find a more general solution to the problem.

Cheers for any insight you can give.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. 2026-05-10T22:41:25+00:00Added an answer on May 10, 2026 at 10:41 pm

    You can’t assign values to an IN parameter, but you could make them IN/OUT and then set them. That raises a big potential for misuse and confusion, though.

    So I think you’d do better with a local variable. But you can do it in the declaration. That is,

    create or replace FUNCTION testFunction (   varNumber IN NUMBER DEFAULT 0 ) RETURN NUMBER AS   vFix number := nvl(varNumber,0); BEGIN   dbms_output.put_line(vFix);   RETURN vFix; END; 
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 51k
  • Answers 51k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • added an answer First off you have to convert your 3D beziers to… May 11, 2026 at 6:24 am
  • added an answer std::map does not manage the memory pointed to by the… May 11, 2026 at 6:24 am
  • added an answer I really like TinyMCE which also should fit your requirements.… May 11, 2026 at 6:24 am

Top Members

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.