<p>I'm collecting metadata using the sys.* views, and according to the documentation, the sys.identity_columns view will return the seed and increment values like so.</p>

<pre><code>CREATE TABLE ident_test (
  test_id int IDENTITY(1000,10),
  other int
)

SELECT name, seed_value, increment_value
  FROM sys.identity_columns
 WHERE object_id = OBJECT_ID( 'ident_test' )
</code></pre>

<p>However, the above query just returns one column.  Is it just me?</p>

<p>(Note: I've had to change this question somewhat from its earlier version.)</p>

Are you sure you are running this in a database with tables with
```
IDENTITY
```
columns?
```
```
SELECT c.name, i.seed_value, i.increment_value
FROM sys.columns c
INNER JOIN sys.identity_columns i
    ON i.object_id = c.object_id
    AND i.column_id = c.column_id
```
```
Returns rows for me in a regular production database with a few identities.
Using a
```
LEFT JOIN
```
returns these rows as well as many which are not
```
IDENTITY
```
I ran this on another database, and I noticed some
```
NULL
```
s are returned (even in the
```
INNER JOIN
```
case).  This is because some of the columns are in
```
VIEW
```
s.
Try adding:
```
```
INNER JOIN sys.tables t
ON t.object_id = c.object_id
```
```
To filter only to actual
```
IDENTITY
```
columns in tables.