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

  • Home
  • SEARCH
  • 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 986763
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 16, 20262026-05-16T05:22:20+00:00 2026-05-16T05:22:20+00:00

I am new to Oracle, I have two tablespaces one for dev and one

  • 0

I am new to Oracle, I have two tablespaces one for dev and one for live.

Is there a way that I can have a variable on a Package header that contains a tablespace name, which can then be used from within the procedures defined in the package header?

I need to do this as I have one tableSpace (TableSpaceA) that needs to query tables in TableSpaceB via procedures. The Dev TableSpaceB has a different table space name to live therefore I was hoping I could declare in the Package header a variable like


Tablespace temp = “TableSpaceName”

Then

Select * from temp.TableName

And finally change “TableSpaceName” when i roll my changes out to the live environment?

  • 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. Editorial Team
    Editorial Team
    2026-05-16T05:22:20+00:00Added an answer on May 16, 2026 at 5:22 am

    Tablespaces are an administrative thing: they are a way of logically grouping storage without the need to worry about filepaths or other administrivia.


    From your revised question it is obvious that Tony is right and what you mean is schema.

    A schema is the set of objects owned by a user. When a procedure owned by User A needs to reference an object owned by Schema B there are two ways of doing this. The first way is to hardcode the schema name.

    select * 
    from user_b.emp;
    

    This is usually fine but will not work in the scenario you describe, where the other schema has a different name different name in other environments (C rather than B).

    The way around this problem is to use synonyms.

    select * 
    from not_my_emp;
    

    In DEV the synonym would be:

    create synonym not_my_emp for user_b.emp
    /
    

    whereas in production it would be

    create synonym not_my_emp for user_c.emp
    /
    

    The table could even have a different table in production, it doesn’t matter. The synonym acts as an interface to shield our objects from the untidy details of other schemas.

    Note that a synonym does not grant privileges on the underlying object. This means that USER_B has to grant privileges on EMP in Development and USER_C has to grant privileges in Production.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

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.