Please start any new threads on our new
site at https://forums.sqlteam.com. We've got lots of great SQL Server
experts to answer whatever question you can come up with.
Author |
Topic |
galavezh
Starting Member
6 Posts |
Posted - 2011-07-30 : 05:26:59
|
Hi,I have a Problem with This Statment:Alter PROCEDURE SpName (@TableNames nvarchar(500))ASBEGINdeclare @NumberOut intEXECUTE sp_executesql N'Select @Number=count(*) From @TableName',N'@TableName nvarchar(500)',N'@Number int Output',@TableName=@TableNames,@Number=@NumberOut Outputselect @NumberOutENDGOPlease help me |
|
visakh16
Very Important crosS Applying yaK Herder
52326 Posts |
Posted - 2011-07-30 : 05:36:25
|
Try:-Alter PROCEDURE SpName (@TableNames nvarchar(500))ASBEGINdeclare @NumberOut intEXECUTE sp_executesql N'Select @Number=count(*) From @TableName',N'@TableName nvarchar(500),@Number int Output',@TableName=@TableNames,@Number=@NumberOut Outputselect @NumberOutENDGO ------------------------------------------------------------------------------------------------------SQL Server MVPhttp://visakhm.blogspot.com/ |
 |
|
galavezh
Starting Member
6 Posts |
Posted - 2011-07-30 : 05:41:40
|
this code has a error:Alter PROCEDURE SpName (@TableNames nvarchar(500))ASBEGINdeclare @NumberOut intEXECUTE sp_executesql N'Select @Number=count(*) From @TableName',N'@TableName nvarchar(500),@Number int Output',@TableName=@TableNames,@Number=@NumberOut Outputselect @NumberOutENDGOthe error is:Msg 1087, Level 15, State 2, Line 1Must declare the table variable "@TableName". |
 |
|
khtan
In (Som, Ni, Yak)
17689 Posts |
Posted - 2011-07-30 : 06:15:28
|
[code]CREATE PROCEDURE SpName (@TableNames nvarchar(500))ASBEGINdeclare @sql nvarchar(max), @NumberOut intselect @sql = N'Select @Number=count(*) From ' + @TableNamesEXECUTE sp_executesql @sql, N'@Number int Output', @Number = @NumberOut Outputselect @NumberOutENDGO[/code] KH[spoiler]Time is always against us[/spoiler] |
 |
|
galavezh
Starting Member
6 Posts |
Posted - 2011-07-30 : 23:45:37
|
Thanks a lot khtan. |
 |
|
|
|
|
|
|