title: SQL Server variable scope in a stored procedure
body: <p>I would like to declare a variable within an if/else statement in a SQL Server stored procedure. I understand that this is fairly impossible because SQL Server doesn't do memory management with respect to declaration of variables within procedures. Is there a way to have a variable scoped in an if/else statement, then redeclare a variable with the same name in another if/else statement? For example:</p>
  
  <pre><code>create procedure Foo
  as
  begin  
      if exists (x)
      begin
          declare @bob int
          set bob = 1
      end
      else
      begin
          declare @bob int
          set bob = 2
      end
  end
  </code></pre>