Click here to Skip to main content
15,884,298 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
SQL
BEGIN TRY
				SET @SQL = 'SELECT ' + @PAIDSTATUS + ' = PAIDSTATUS FROM '+ @DATABASES +'.DBO.sometablename WHERE ROLLNO=''' + @ROLLNO +''''
				SELECT @PAIDSTATUS
				PRINT (@PAIDSTATUS)
				EXEC (@SQL)
				
				IF (@PAIDSTATUS!='Y')
					SET @ERROR_MSG='You are not registered'
			END TRY
			BEGIN CATCH
				RAISERROR(@ERROR_MSG,1,1)
			END CATCH


I want value of @paidstatus so that I can manipulate that variable further..

Thanks for help..
Posted
Comments
Ankur\m/ 9-Dec-14 0:49am    
Have you declared the variable @PAIDSTATUS in your query? And then you are trying to use it in a dynamic query and you want it's value? Am I right?
/\jmot 9-Dec-14 0:51am    
what's the Value Assign to @PAIDSTATUS ???
AshishChaudha 9-Dec-14 1:08am    
yes I declared variable
DECLARE @PAIDSTATUS VARCHAR(2)
BEGIN TRY
SET @SQL = 'SELECT ' + @PAIDSTATUS + ' = PAIDSTATUS FROM '+ @DATABASES +'.DBO.sometablename WHERE ROLLNO=''' + @ROLLNO +''''
SELECT @PAIDSTATUS
PRINT (@PAIDSTATUS)
EXEC (@SQL)

IF (@PAIDSTATUS!='Y')
SET @ERROR_MSG='You are not registered'
END TRY
BEGIN CATCH
RAISERROR(@ERROR_MSG,1,1)
END CATCH

1 solution

hi,

try this

SQL
declare @PAIDSTATUS as varchar(10)

SELECT  @PAIDSTATUS = PAIDSTATUS FROM table_name WHERE ROLLNO=1
 
Share this answer
 
v2
Comments
AshishChaudha 9-Dec-14 1:10am    
Thanks..This I know very well..I want that value in @paidstatus variable when the table name is also dynamic..
mudgilsks 9-Dec-14 1:35am    
if your table is dynamic then you first take query output in temp table after that use it as normal like this

SET @SQL = 'SELECT ' + @PAIDSTATUS + ' = PAIDSTATUS into ##temp FROM '+ @DATABASES +'.DBO.sometablename WHERE ROLLNO=''' + @ROLLNO +''''

PRINT (@PAIDSTATUS)
EXEC (@SQL)

seelct @PAIDSTATUS = PAIDSTATUS from ##temp

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900