Go Premium for a chance to win a PS4. Enter to Win

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

Use 'GO' without losing variables? Is there an equivalent to GO or elegant workaround?

I set some variables that are calculated dates and want to see a check of those as soon as a long-running query is started.  

If I have an initial SELECT that displays the variables, it doesn't display until the query completes.  And of course, if I insert a GO command I lose the variable values.
I want the initial SELECT to execute (display) right away.

The only work-around I can think of (as a sql beginner) is to write my variables into a temp table, use GO, and then read them back out.  I hope there's a more elegant method.  Is there?

(main query displays all at once, not piecemeal, due to a sort on a calculated column)

Thanks,

Ed

DECLARE @variable varchar(20)
SET @variable = '"SEARCH CRITERIA"'

SELECT 'Starting a query based on the criteria of: ' + @variable + '.  This may take a while.' AS 'Intro that allows double check of criteria. ______________________________________'

--GO

WAITFOR DELAY '00:00:05.000'  --just to simulate the time required to run the query.  Often 10 minutes or more.
SELECT 'This is a long running query based on ' + @variable + '.' AS 'Main Query ________________________________________'

Open in new window

0
nosliwde99
Asked:
nosliwde99
  • 3
1 Solution
 
SANDY_SKCommented:
Instead of using the select to display a message, cant you use the print command

print 'Starting a query based on the criteria of: ' + @variable + '.  This may take a while.' AS 'Intro that allows double check of criteria. ______________________________________'
0
 
Éric MoreauSenior .Net ConsultantCommented:
why do you need GO? I have been writting SQL for years and didn't had to use GO very often!
0
 
nosliwde99Author Commented:
No dice so far.  Thanks for the idea Sandy.  The PRINT only prints the message to the messages tab at the same time that the results are populated.   The sample code illustrates the problem nicely.  Other thoughts?
0
 
nosliwde99Author Commented:
So, I just wrote my variables into a temp table, used the GO to be able to execute the first query straight away, then read the variables back out of the temp table.  I'm guessing from the responses that there is no other good method.  Will leave open a bit longer to see if anyone comes up with a better solution.
0
 
nosliwde99Author Commented:
No good solution found - this was the best work-around (i.e. writing variables to a temp table, employing the 'GO', then reading the variables back out of the temp table).
0

Featured Post

Veeam Disaster Recovery in Microsoft Azure

Veeam PN for Microsoft Azure is a FREE solution designed to simplify and automate the setup of a DR site in Microsoft Azure using lightweight software-defined networking. It reduces the complexity of VPN deployments and is designed for businesses of ALL sizes.

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