Skip Navigation Links
SQL Server 2012
SQL Server 2014
SQL Server 2016
Practice Test
Tip of the Day : Example Uses of the IIF Logical Function
Home > Tips & Tricks > Error Messages 2001 to 3000
SQL Server Error Messages - Errors 2001 to 3000

A message number uniquely identifies each error message and the error message text describes the problem.  The error message text often includes placeholders for information (such as object names) to be inserted in the error message when it is displayed.  Unfortunately, the error message text does not tell you how to solve or work around the problem.  In this series of Error Messages list, we will try to provide you with ways on how to overcome or work around certain error messages.

Some error messages are self-explanatory and can easily be fixed, such as "Invalid object name".  Others are harder to fix or work around, especially by those who are new to SQL Server.  It is the intent of this page and succeeding pages (to come) to assist you in addressing or working around SQL Server error messages.

Error Severity Description
2001 10 Cannot use duplicate parameter names. Parameter name '%.*ls' listed more than once.
2004 16 Procedure '%.*ls' has already been created with group number %d. Create procedure with an unused group number.
2007 11 Cannot add rows to sysdepends for the current stored procedure because it depends on the missing object '%.*ls'. The stored procedure will still be created.
2008 16 The object '%.*ls' is not a procedure so you cannot create another procedure under that group name.
2009 10 Procedure '%.*ls' was created despite delayed name resolution warnings (if any).
2010 16 Cannot perform alter on %.*ls because it is an incompatible object type.
2011 16 Index hints cannot be specified within a schema-bound object.
2012 16 User-defined variables cannot be declared within a schema-bound object.
2106 11 Cannot create a trigger on table '%.*ls', because this table does not exist in database '%.*ls'.
2108 16 Cannot create a trigger on table '%.*ls' because you can only create a trigger on a table in the current database.
2110 16 Cannot alter trigger '%.*ls' for table '%.*ls' because this trigger does not belong to this table.
2111 16 Cannot %s trigger '%.*ls' for %S_MSG '%.*ls' because an INSTEAD OF %s trigger already exists.
2112 16 Cannot %s trigger '%.*ls' for view '%.*ls' because it is defined with the CHECK OPTION.
2113 16 Cannot %s INSTEAD OF DELETE or UPDATE TRIGGER '%.*ls' on table '%.*ls' because the table has a FOREIGN KEY with cascaded DELETE or UPDATE.
2114 16 Column '%.*ls' cannot be used in an IF UPDATE clause because it is a computed column.
2501 16 Could not find a table or object named '%.*ls'. Check sysobjects.
2502 16 Could not start transaction.
2503 10 Successfully deleted the physical file '%ls'.
2504 16 Could not delete the physical file '%ls'. The DeleteFile system function returned error %ls.
2505 16 The device '%.*ls' does not exist. Use sp_helpdevice to show available devices.
2506 16 Could not find a table or object name '%.*ls' in database '%.*ls'.
2511 16 Table error: Object ID %d, Index ID %d. Keys out of order on page %S_PGID, slots %d and %d.
2512 16 Table error: Object ID %d, Index ID %d. Duplicate keys on page %S_PGID slot %d and page %S_PGID slot %d.
2513 16 Table error: Object ID %ld (object '%.*ls') does not match between '%.*ls' and '%.*ls'.
2514 16 Table error: Data type %ld (type '%.*ls') does not match between '%.*ls' and '%.*ls'.
2515 16 Page %S_PGID, object ID %d, index ID %d has been modified but is not marked modified in the differential backup bitmap.
2516 16 The differential bitmap was invalidated for database %.*ls. A full database backup is required before a differential backup can be performed.
2517 16 The minimally logged operation status has been turned on for database %.*ls. Rerun backup log operations to ensure that all data has been secured.
2519 16 Unable to process table %.*ls because filegroup %.*ls is invalid.
2520 16 Could not find database '%.*ls'. Check sysdatabases.
2521 16 Could not find database ID %d. Check sysdatabases.
2522 16 Unable to process index %.*ls of table %.*ls because filegroup %.*ls is invalid.
2523 16 Filegroup %.*ls is invalid.
2524 16 Unable to process table %.*ls because filegroup %.*ls is offline.
2525 16 Database file %.*ls is offline.
2526 16 Incorrect DBCC statement. Check the documentation for the correct DBCC syntax and options.
2527 16 Unable to process index %.*ls of table %.*ls because filegroup %.*ls is offline.
2528 10 DBCC execution completed. If DBCC printed error messages, contact your system administrator.
2529 16 Filegroup %.*ls is offline.
2530 16 Secondary index entries were missing or did not match the data in the table. Use the WITH TABLOCK option and run the command again to display the failing records.
2531 16 Table error: Object ID %d, index ID %d B-tree level mismatch, page %S_PGID. Level %d does not match level %d from previous %S_PGID.
2532 16 DBCC SHRINKFILE could not shrink file %ls. Log files are not supported.
2533 16 Table error: Page %S_PGID allocated to object ID %d, index ID %d was not seen. Page may be invalid or have incorrect object ID information in its header.
2534 16 Table error: Page %S_PGID with object ID %d, index ID %d in its header is allocated by another object.
2535 16 Table error: Page %S_PGID is allocated to object ID %d, index ID %d, not to object ID %d, index ID %d found in page header.
2536 10 DBCC results for '%.*ls'.
2537 16 Table error: Object ID %d, index ID %d, page %S_PGID, row %d. Record check (%hs) failed. Values are %ld and %ld.
2538 10 File %d. Number of extents = %ld, used pages = %ld, reserved pages = %ld.
2539 10 Total number of extents = %ld, used pages = %ld, reserved pages = %ld in this database.
2540 10 The system cannot self repair this error.
2541 10 DBCC UPDATEUSAGE: sysindexes row updated for table '%.*ls' (index ID %ld):
2542 10 DATA pages: Changed from (%ld) to (%ld) pages.
2543 10 USED pages: Changed from (%ld) to (%ld) pages.
2544 10 RSVD pages: Changed from (%ld) to (%ld) pages.
2545 10 ROWS count: Changed from (%I64d) to (%I64d) rows.
2546 10 Index '%.*ls' on table '%.*ls' is marked offline. Rebuild the index to bring it online.
2547 10 Performing second pass of index checks.
2548 10 DBCC: Compaction phase of index '%.*ls' is %d%% complete.
2549 10 DBCC: Defrag phase of index '%.*ls' is %d%% complete.

Error Severity Description
2557 14 User '%.*ls' does not have permission to run DBCC %ls for object '%.*ls'.
2559 16 The '%ls' and '%ls' options are not allowed on the same statement.
2560 16 Parameter %d is incorrect for this DBCC statement.
2562 16 '%ls' cannot access object '%.*ls' because it is not a table.
2566 14 DBCC DBREINDEX cannot be used on system tables.
2567 14 DBCC INDEXDEFRAG cannot be used on system table indexes
2568 16 Page %S_PGID is out of range for this database or is in a log file.
2570 16 Warning: Page %S_PGID, slot %d in Object %d Index %d Column %.*ls value %.*ls is out of range for data type "%.*ls". Update column to a legal value.
2571 14 User '%.*ls' does not have permission to run DBCC %.*ls.
2572 16 DBCC cannot free DLL '%.*ls'. The DLL is in use.
2573 16 Database '%.*ls' is not marked suspect. You cannot drop it with DBCC.
2574 10 Object ID %d, index ID %d: Page %S_PGID is empty. This is not permitted at level %d of the B-tree.
2575 16 IAM page %S_PGID is pointed to by the next pointer of IAM page %S_PGID object ID %d index ID %d but was not detected in the scan.
2576 16 IAM page %S_PGID is pointed to by the previous pointer of IAM page %S_PGID object ID %d index ID %d but was not detected in the scan.
2577 16 Chain sequence numbers are out of order in IAM chain for object ID %d, index ID %d. Page %S_PGID sequence number %d points to page %S_PGID sequence number %d.
2578 16 Minimally logged extents were found in GAM interval starting at page %S_PGID but the minimally logged flag is not set in the database table.
2579 16 Table error: Extent %S_PGID object ID %d, index ID %d is beyond the range of this database.
2580 16 Table '%.*ls' is either a system or temporary table. DBCC CLEANTABLE cannot be applied to a system or temporary table.
2583 16 An incorrect number of parameters was given to the DBCC statement.
2588 16 Page %S_PGID was expected to be the first page of a text, ntext, or image value.
2590 10 User '%.*ls' is modifying bytes %d to %d of page %S_PGID in database '%.*ls'.
2591 16 Could not find row in sysindexes with index ID %d for table '%.*ls'.
2592 10 %ls index successfully restored for object '%.*ls' in database '%.*ls'.
2593 10 There are %I64d rows in %ld pages for object '%.*ls'.
2594 16 Invalid index ID (%d) specified.
2595 16 Database '%.*ls' must be set to single user mode before executing this statement.
2597 16 The database is not open. Execute a 'USE %.*ls' statement and rerun the DBCC statement.
2598 16 Clustered indexes on sysobjects and sysindexes cannot be re-created.
2601 14 Cannot insert duplicate key row in object '<Object Name>' with unique index '<Index Name>'.
2603 21 No space left on logical page %S_PGID of index ID %d for object '%.*ls' when inserting row on an index page. This situation should have been handled while traversing the index.
2624 21 Could not insert into table %S_DES because row length %d is less than the minimum length %d.
2627 14 Violation of PRIMARY KEY constraint '%.*ls'. Cannot insert duplicate key in object '%.*ls'.
2701 10 Database name '%.*ls' ignored, referencing object in tempdb.
2702 16 Database '%.*ls' does not exist.
2705 16 Column names in each table must be unique. Column name '%.*ls' in table '%.*ls' is specified more than once.
2706 11 Table '%.*ls' does not exist.
2710 16 You are not the owner specified for the object '%.*ls' in this statement (CREATE, ALTER, TRUNCATE, UPDATE STATISTICS or BULK INSERT).
2714 16 There is already an object named '%.*ls' in the database.
2715 16 Column or parameter #%d: Cannot find data type %.*ls.
2716 16 Column or parameter #%d: Cannot specify a column width on data type %.*ls.
2717 15 The size (%d) given to the %S_MSG '%.*ls' exceeds the maximum allowed (%d).
2718 16 Column or parameter #%d: Cannot specify null values on a column of data type bit.
2721 11 Could not find a default segment to create the table on. Ask your system administrator to specify a default segment in syssegments.
2724 10 Parameter '%.*ls' has an invalid data type.
2727 11 Cannot find index '%.*ls'.
2730 11 Cannot create procedure '%.*ls' with a group number of %d because a procedure with the same name and a group number of 1 does not currently exist in the database. Must execute CREATE PROCEDURE '%.*ls';1 first.
2731 16 Column '%.*ls' has invalid width: %d.
2732 16 Error number %ld is invalid. The number must be from %ld through %ld
2734 16 The user name '%.*ls' does not exist in sysusers.
2736 16 Owner name specified is a group name. Objects cannot be owned by groups.
2737 16 Message passed to %hs must be of type char, varchar, nchar, or nvarchar.
2738 16 A table can only have one timestamp column. Because table '%.*ls' already has one, the column '%.*ls' cannot be added.
2739 16 The text, ntext, and image data types are invalid for local variables.
2740 16 SET LANGUAGE failed because '%.*ls' is not an official language name or a language alias on this SQL Server.
2741 16 SET DATEFORMAT date order '%.*ls' is invalid.
2742 16 SET DATEFIRST %d is out of range.
2743 16 %ls statement requires %S_MSG parameter.
2744 16 Multiple identity columns specified for table '%.*ls'. Only one identity column per table is allowed.
2745 16 Process ID %d has raised user error %d, severity %d. SQL Server is terminating this process.
2746 16 Cannot specify user error format string with a length exceeding %d bytes.
2747 16 Too many substitution parameters for RAISERROR. Cannot exceed %d substitution parameters.
2748 16 Cannot specify %ls data type (RAISERROR parameter %d) as a substitution parameter for RAISERRROR.
2749 16 Identity column '%.*ls' must be of data type int, bigint, smallint, tinyint, or decimal or numeric with a scale of 0, and constrained to be nonnullable.
2750 16 Column or parameter #%d: Specified column precision %d is greater than the maximum precision of %d.
2751 16 Column or parameter #%d: Specified column scale %d is greater than the specified precision of %d.
2752 16 Identity column '%.*ls' contains invalid SEED.
2753 16 Identity column '%.*ls' contains invalid INCREMENT.
2754 16 Error severity levels greater than %d can only be specified by members of the sysadmin role, using the WITH LOG option.
2755 16 SET DEADLOCK_PRIORITY option '%.*ls' is invalid.
2756 16 Invalid value %d for state. Valid range is from %d to %d.
2757 16 RAISERROR failed due to invalid parameter substitution(s) for error %d, severity %d, state %d.
2758 16 %hs could not locate entry for error %d in sysmessages.
2759 0 CREATE SCHEMA failed due to previous errors.
2760 16 Specified owner name '%.*ls' either does not exist or you do not have permission to use it.
2761 16 The ROWGUIDCOL property can only be specified on the uniqueidentifier data type.
2762 16 sp_setapprole was not invoked correctly. Refer to the documentation for more information.
2763 16 Could not find application role '%.*ls'.
2764 16 Incorrect password supplied for application role '%.*ls'.
2765 15 Could not locate statistics for column '%.*ls' in the system catalogs.
2766 16 The definition for user-defined data type '%.*ls' has changed.
2767 15 Could not locate statistics '%.*ls' in the system catalogs.
2768 15 Statistics for %ls '%.*ls'.
2769 15 Column '%.*ls'. Cannot create statistics on a column of data type %ls.
2770 16 The SELECT INTO statement cannot have same source and destination tables.
2771 16 Cannot create statistics on table '%.*ls'. This table is a virtual system table.
2772 16 Cannot access temporary tables from within a function.
2773 16 Sort order ID %d is invalid.
2774 16 Collation ID %d is invalid.
2775 16 Code page %d is not supported by the operating system.
2777 17 Database '%.*ls' contains columns or parameters with the following code page(s) not supported by the operating system: %ls.
2801 16 The definition of object '%.*ls' has changed since it was compiled.
2809 18 The request for %S_MSG '%.*ls' failed because '%.*ls' is a %S_MSG object.
2812 16 Could not find stored procedure '%.*ls'.

Related Articles :