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 7957977
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 4, 20262026-06-04T04:20:53+00:00 2026-06-04T04:20:53+00:00

Specifically, can I call a proc from the current database in a view. I

  • 0

Specifically, can I call a proc from the current database in a view. I already know about the openrowset hack, so this works, for example:

create view MyView as
    select *
    from openrowset (
        'sqloledb',
        'server=(local);trusted_connection=yes;',
        'exec MyDatabase.dbo.MyStoredProcedure' -- Works fine
    )

But I’d like to be able to call the proc from the current DB without hard-coding the name like so:

create view MyView as
    select *
    from openrowset (
        'sqloledb',
        'server=(local);trusted_connection=yes;',
        'exec ' + db_name() + '.dbo.MyStoredProcedure' -- Don't want to hard-code DB name
    )

This doesn’t work, unfortunately, as openrowset expects literal strings, rather than variables of any sort.

Regardless of security and performance considerations, is there a workaround? It would make the maintenance of a legacy system much more bearable, as the proc that this view will call connects to a different database depending upon environment (dev, test, prod).

  • 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-06-04T04:20:54+00:00Added an answer on June 4, 2026 at 4:20 am

    No, you can’t use dynamic SQL in a view. You could just create three views if there are only three different “environments”, and/or use synonyms depending on the environment. So for example, you could have three views (pseudo/trimmed):

    create view dbo.devMyView as
        select * ... 'exec Dev.dbo.MyStoredProcedure'
    go
    create view dbo.testMyView as
        select * ... 'exec Test.dbo.MyStoredProcedure'
    go
    create view dbo.prodMyView as
        select * ... 'exec Prod.dbo.MyStoredProcedure'
    

    Then you can use dynamic SQL in your code to specify which view you want, or you can drop and create a synonym when you want to simulate each environment, e.g.

    DROP SYNONYM dbo.MyView;
    GO
    CREATE SYNONYM dbo.MyView FOR dbo.devMyView;
    

    Now the code that references dbo.MyView will ultimately call the stored procedure in the dev database. The downside of this is that only one synonym can be active/redirecting at any given time.

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

Sidebar

Related Questions

I would like to know how to call kernel functions from AX using C#
Specifically, I need to call a version of exec that maintains the current working
Can I call a JsonResult method from my ActionResult? What I'm trying to do
This seems silly, but I can't find how to do an asynchronous function call
Specifically how can I: Show a button which will let the user browse through
How can I specifically override just the back button while within a dialog to
How can I get the command line arguments in (specifically in GNU, if there
Can someone post an example of as3 code (specifically event listener included) that would
(Specifically, I'm using Backbone Model events) Can someone help me understand how javascript events
How can you tell when a button is being pressed? Specifically, how can you

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.