title: Specify "NEXT VALUE" for INSERT statement using identity column in SQL Server
body: <p>Consider the following table and SQL from <a href="https://technet.microsoft.com/en-us/library/dd776381(v=sql.105).aspx#ColumnValues" rel="nofollow">Microsoft's INSERT documentation</a> that deals with IDENTITY columns:</p>
  
  <pre><code>CREATE TABLE dbo.T1 (column_1 int IDENTITY, column_2 VARCHAR(30));
  GO
  
  INSERT T1 (column_2) VALUES ('Row #2');
  </code></pre>
  
  <p>The <code>INSERT</code> statement does not specify <code>column_1</code> as a column of the table, and SQL Server auto-populates the next value for that identity column. This is the normal way identity columns are handled. </p>
  
  <p>How can I have the same behavior, while also specifying the column name?</p>
  
  <p>For example, I'm looking for <em>something</em> like: </p>
  
  <pre><code>INSERT INTO T1 (column_1, column_2) 
  VALUES (NEXT VALUE, 'Row #3');
  GO
  </code></pre>
  
  <p>I don't believe <code>NEXT VALUE</code> works here, but is there something that does work?  Is there a key token or function that will indicate that the identity column should be used?</p>
  
  <p>Note: the reason I ask is that the framework I'm using requires all columns to be specified in the column list. </p>