home *** CD-ROM | disk | FTP | other *** search
- USE master
- GO
-
- CREATE PROC sp_checkident AS
- /********************************************************************/
- /* Procedure to run DBCC CHECKIDENT for a database. */
- /* Copyright (c) Tibor Karaszi and B÷rje Carlsson 1999 */
- /* Tested on version 6.5 and 7.0. */
- /********************************************************************/
- SET NOCOUNT ON
-
- DECLARE @ver VARCHAR(5)
- SELECT @ver = CASE
- WHEN CHARINDEX('6.50', @@VERSION) > 0 THEN '6.50'
- WHEN CHARINDEX('7.00', @@VERSION) > 0 THEN '7.00'
- END
- -- Remove below IF statement if you want to execute on 7.0
- IF @ver = '6.50'
- BEGIN
- DECLARE tbl_names INSENSITIVE CURSOR FOR
- SELECT OBJECT_NAME(sc.id)
- FROM syscolumns sc, sysobjects so
- WHERE sc.id = so.id
- AND convert(bit, sc.status & 0x0080) = 1
- AND so.type IN ('U', 'S')
-
- OPEN tbl_names
- DECLARE @tbl_name VARCHAR(30)
- DECLARE @exec_str VARCHAR(255)
- FETCH NEXT FROM tbl_names INTO @tbl_name
- WHILE (@@fetch_status <> -1)
- BEGIN
- IF (@@fetch_status <> -2)
- BEGIN SELECT @exec_str = 'DBCC CHECKIDENT (''' + @tbl_name + ''') WITH NO_INFOMSGS'
- PRINT @exec_str
- EXEC( @exec_str)
- END
- FETCH NEXT FROM tbl_names INTO @tbl_name
- END
- DEALLOCATE tbl_names
- END
- GO
-
-