title: What does the GO command do in an SQL script?
body: <p>I have read up about the GO command but I have not seen a clear answer to the following question. </p>
  
  <p>Let's say I run the following set of commands from the SSMS:</p>
  
  <pre><code>INSERT INTO [dbo].[hwr] ([wr_id]) VALUES (990017882)
  INSERT INTO [dbo].[hwr] ([wr_id]) VALUES (990017883)
  INSERT INTO [dbo].[hwr] ([wr_id]) VALUES (990017884)
  INSERT INTO [dbo].[hwr] ([wr_id]) VALUES (990017885)
  </code></pre>
  
  <p>How does this differ from: </p>
  
  <pre><code>INSERT INTO [dbo].[hwr] ([wr_id]) VALUES (990017882)
  GO
  INSERT INTO [dbo].[hwr] ([wr_id]) VALUES (990017883)
  GO
  INSERT INTO [dbo].[hwr] ([wr_id]) VALUES (990017884)
  GO
  INSERT INTO [dbo].[hwr] ([wr_id]) VALUES (990017885)
  GO
  </code></pre>
  
  <p>In other words, is the 'GO' command actually accomplishing anything in this situation? If so, what?</p>
  
  <p>Many thanks,
  Matt</p>