Improve company productivity with a Business Account.Sign Up

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 289
  • Last Modified:

how to run a query in Store procedure from a table passed by parameter?

Hello guys

I have a store procedure with a parameter that I will pass a table,

how can I run this table in store procedure that I passed by parameter.

example


exect run_table "nome_table"

inside the store procedure

select * from @table

but this way it doesn't work, I think it must be a string of script

how do that?

thanks
0
hidrau
Asked:
hidrau
2 Solutions
 
Jared_SCommented:
Can you create your variable table within your stored procedure, or create your table as a temp table instead and just reference it directly in your sp?
0
 
Ioannis ParaskevopoulosCommented:
Hi,

Inside the stored procedure instead of

select * from @table

Open in new window

write
EXEC('SELECT * FROM ' + @table)

Open in new window

Giannis
0
 
lcohanDatabase AnalystCommented:
<<
inside the store procedure

select * from @table

but this way it doesn't work,
>>


--with @tables like with variables - try run just:

SELECT @table;

--instead...
0
 
LowfatspreadCommented:
if you want to pass a table name to a  stored procedure and then have the procedure
run query against that table then you basically need to use dynamic sql in the query...

however it is a security issue to have such a generalised stored procedure , and normally as a solution is strongly not recommended.

declare @sql varchar(1000)

set @sql='Select * from '+@table_name_parameter

exec(@sql)

would be one way to achieve it
0
 
hidrauAuthor Commented:
thanks
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now