MS SQL Server Diagnostics

Microsoft® SQL Server
Version 7.0
For Microsoft Windows NT ® and Windows ® 95/98 Operating Systems
Microsoft Corporation 

Contents

Introduction

Finding Information on the Internet

Documentation Conventions

Overview of Printed Documentation

Part 1 Optimizing Database Performance
Chapter 1 Database Design

Logical Database Design

Database Design Considerations: Data Types

Physical Database Design

RAIDDeveloping a Drive Performance StrategyRAID Levels and SQL ServerComparing Different Implementations of RAID LevelsAbout Hardware-based SolutionsAbout Windows NT-based Disk Striping and Striping with ParityAbout Windows NT-based Disk Mirroring and DuplexingPartitioningData Placement Using FilegroupsPlacing Tables on FilegroupsPlacing Indexes on FilegroupsIndex Tuning RecommendationsOptimizing Transaction Log PerformanceOptimizing tempdb PerformanceFile Systems

Chapter 2 Query Tuning

Analyzing a Query

Graphically Displaying the Execution Plan Using SQL Server Query AnalyzerLogical and Physical OperatorsAssertAggregateBookmark LookupClustered Index DeleteClustered Index InsertClustered Index UpdateClustered Index ScanClustered Index SeekCollapseCompute ScalarConcatenationConstant ScanCross JoinDeleteDeleted ScanDistinctDistinct SortDistribute StreamsEager SpoolFilterFlow DistinctFull Outer JoinGather StreamsHash MatchHash Match RootHash Match TeamIndex DeleteIndex InsertIndex ScanIndex SeekIndex SpoolIndex UpdateInner JoinInsertInserted ScanLazy SpoolLeft Anti Semi JoinLeft Outer JoinLeft Semi JoinLog Row ScanMerge IntervalMerge JoinNested LoopsParallelismParameter Table ScanRemote DeleteRemote InsertRemote QueryRemote ScanRemote UpdateRepartition StreamsRight Anti Semi JoinRight Outer JoinRight Semi JoinRow Count SpoolSequenceSortSplitStream AggregateTable DeleteTable InsertTable ScanTable SpoolTable UpdateTopUnionUpdateCursor Logical and Physical Operators

Query Tuning Recommendations

Advanced Query Tuning Concepts

Understanding Nested Loops JoinsUnderstanding Merge JoinsUnderstanding Hash Joins

Chapter 3 Application Design

Networking and Performance

Named Pipes vs. TCP/IP Sockets

Optimizing Application Performance Using Efficient Data Retrieval

Effects of Transactions and Batches on Application Performance

Effects of Stored Procedures on Application Performance

Understanding and Avoiding Blocking

Optimizing Distributed Queries

Chapter 4 Optimizing Utility and Tool Performance

Optimizing Backup and Restore Performance

Optimizing Bulk Copy Performance

Optimizing DBCC Performance

Chapter 5 Optimizing Server Performance

Optimizing Server Performance Using Memory Configuration Options

Optimizing Server Performance Using I/O Configuration Options

Optimizing Server Performance Using Windows NT Options

Maximizing ThroughputConfiguring Server TaskingConfiguring Virtual Memory

Part 2 Troubleshooting
Chapter 6 Troubleshooting

Frequently Asked Questions

Reporting Errors to Your Primary Support Provider

Reproducing Problems

Isolating Connection Problems

Orphaned SessionsNamed Pipes Client ConnectionsTCP/IP Sockets Client Connections

Chapter 7 Troubleshooting SQL Server Setup

Setup Troubleshooting: Checklist

Testing an Installation of SQL Server 7.0

SQL Server Setup Frequently Asked Questions

Informational Files Created by SQL Server Setup

Contents of the Sqlstp.log file

Scripting

Troubleshooting the SQL Server Upgrade Wizard

Completing the SQL Server Upgrade WizardUpgrade Log Files

Chapter 8 Server and Database Troubleshooting

Resetting the Suspect Status

Troubleshooting Alerts

Troubleshooting Backing Up and Restoring

Troubleshooting Orphaned Users

Troubleshooting Data Transformation Services

Troubleshooting Locking

Troubleshooting MSSQLServer or SQLServerAgent Services User Accounts

Troubleshooting Full-Text Search

Before Uninstalling Site Server 3.0Presence of UNC path in PATH Environment Variable

Troubleshooting Multiserver Jobs

Troubleshooting the Operating System

Appearance of Internet Connection Dialog Box at Startup of Windows 95/98Thread PoolingInsufficient Virtual Memory on the Server

Insufficient Resource Space

Determining When SQL Server Causes a Windows NT Blue ScreenWinlogon Problem Caused by SQL Extensible Performance CountersResource LeakCPU Monopolization

Troubleshooting Recovery

Recovery PerformanceInsufficient Disk Space

Troubleshooting Replication

Troubleshooting Statistics

Chapter 9 SQL Server Tools Troubleshooting

Troubleshooting the Index Tuning Wizard

Troubleshooting SQL Mail with Exchange Server

Troubleshooting SQL Server Profiler

Troubleshooting SQL Server Query Analyzer

Troubleshooting the Web Assistant Wizard

Chapter 10 Programming Troubleshooting

Troubleshooting the SQL Server ODBC Driver

Diagnosing ODBC Connection ErrorsDiagnosing General ODBC Errors

Troubleshooting SQL-DMO

Part 3 Error Messages
Chapter 11 Error Messages

Error Message Formats

Error Message Numbers and DescriptionsError Message Severity LevelsSeverity Levels 0 through 19Severity Levels 20 through 25ADO Error Message FormatOLE DB Error Message FormatODBC Error Message FormatEmbedded SQL for C Error Message FormatDB-Library Error Message FormatMessages Returned by SQL Server 7.0 Utilities

Finding Supplemental Error Message Information

Adding User-Defined Error Messages

Chapter 12 System Error Messages

Errors 1 - 999

Errors 1000 - 1999

Errors 2000 - 2999

Errors 3000 - 3999

Errors 4000 - 4999

Errors 5000 - 5999

Errors 6000 - 6999

Errors 7000 - 7999

Errors 9000 - 9999

Errors 10000 - 10999

Errors 11000 - 11999

Errors 13000 - 13999

Errors 14000 - 14999

Errors 15000 - 15999

Errors 16000 - 16999

Errors 17000 - 17999

Errors 18000 - 18999

Errors 19000 -19999

Errors 20000 - 20999

Errors 21000 -21999

Chapter 13 Resolving System Error Messages

Error 103

Error 107

Error 109

Error 137

Error 156

Error 170

Error 207

Error 208

Error 229

Error 220

Error 245

Error 259

Error 266

Error 268

Error 511

Error 515

Error 544

Error 601

Error 602

Error 605

Error 624

Error 625

Error 644

Error 701

Error 813

Error 822

Error 823

Error 844

Error 845

Error 911

Error 913

Error 924

Error 926

Error 945

Error 1002

Error 1105

Error 1203

Error 1204

Error 1205

Error 1505

Error 1508

Error 1510

Error 1530

Error 1702

Error 1803

Error 1814

Error 1902

Error 1903

Error 1904

Error 1910

Error 1916

Error 2501

Error 2511

Error 2513

Error 2535

Error 2601

Error 2750

Error 2751

Error 2812

Error 3023

Error 3036

Error 3101

Error 3120

Error 3143

Error 3149

Error 3154

Error 3155

Error 3206

Error 3209

Error 3227

Error 3242

Error 3247

Error 3249

Error 3251

Error 3256

Error 3258

Error 3263

Error 3267

Error 3414

Error 3604

Error 3627

Error 4207

Error 4208

Error 4214

Error 4305

Error 4306

Error 4318

Error 5013

Error 5701

Error 5808

Error 6103

Error 7130

Error 7303

Error 7304

Error 7306

Error 7314

Error 7321

Error 7356

Error 7357

Error 7391

Error 7392

Error 7399

Error 7403

Error 7413

Error 8101

Error 8102

Error 8106

Error 8114

Error 8163

Error 8501

Error 8645

Error 8651

Error 8906

Error 8908

Error 8925

Error 8952

Error 8956

Error 8976

Error 9002

Error 17050

Error 17809

Error 17824 (Open Data Services)

Error 18456

Error 18458

Error 18459

Read/Write Error

Server Is Unnamed

Error Log Messages

MAPI Error Messages

Chapter 14 DB-Library Error Messages

DB-Library Error Severities

Error 10008 (DB-Library)

Error 10024 (DB-Library)

Error 10053 (DB-Library)

Error 10054 (DB-Library)

Distributed Queries Error Messages

Embedded SQL for C Error Messages

Chapter 15 SQL Server Enterprise Manager Error Messages

(+) operator ignored.

(+) table reference may not be joined with more than one table.

<0s> in expression is not part of the query.

<0s> is not supported.

<0s> may not be used in this query type.

<0s> support is not available in this server version.

A blank constraint expression is not allowed.

A number of rows were affected.

A pair of matching columns is required to create a relationship.

A primary key can't be created on column '<0s>' because it allows null values.

A primary key or index cannot be created on columns with a datatype of <0s>.

A primary key or index cannot have more than <0d> columns.

A primary key or unique constraint must be defined for table '<0s>' before it can participate in a relationship.

A relationship cannot contain more than '<0d>' columns.

Ambiguous outer join (+) operator.

An index already exists for table '<0s>' with the columns '<1s>'.

An index can't exist on a blank column.

Appropriate SQL cannot be generated.

Are you sure you want to delete the current selection from your database?

Are you sure you want to delete the selected relationship from your database?

Are you sure you want to permanently delete table '<0s>' from your database?

Are you sure you want to permanently delete the selected tables from your database?

Are you sure you want to remove the selected table from the diagram?

Are you sure you want to remove the selected tables from the diagram?

Bad top value.

Both sides of a relationship must have the same number of columns.

Cannot add this expression to the select list.

Cannot assign an alias to this field.

Cannot convert entry to valid date/time value.

Cannot convert to proper type.

Cannot delete rows with unknown keys.

Cannot edit rows with unknown keys.

Cannot edit this cell.

Cannot filter this expression.

Cannot insert into this expression.

Cannot open encrypted <0s> <1s>.

Cannot update this expression.

Cannot use column with IMAGE or TEXT data type in this context.

Cannot use LONG data type in this context.

Column '<1s>' in table '<0s>' participates in index '<2s>'. Columns with a datatype of '<3s>' cannot participate in indexes or primary keys.

Column list is not supported for Make Table queries.

Column with (+) operator does not reference a valid table.

Data source alias is read only.

Data source base name is read only.

Data type error in expression.

Data type mismatch - no conversion possible.

Data type mismatch - use the CONVERT function.

DELETE statement conflicted with COLUMN REFERENCE constraint.

Do you want to suppress further error messages telling you why records can't be pasted?

Editing this default will permanently unbind the named default.

Error after function '<0s>'.

Error after predicate near '<0s>'.

Error before EXISTS clause.

Error before EXISTS clause: '<0s>" not recognized.

Error before FROM clause.

Error following UNION operator.

Error in column list.

Error in column list: '<0s>' not recognized.

Error in destination table specification.

Error in FROM clause near '<0s>'.

Error in GROUP BY clause.

Error in GROUP BY clause near '<0s>'.

Error in HAVING clause.

Error in HAVING clause near '<0s>'

Error in INSERT statement.

Error in INSERT statement: '<0s>' not recognized.

Error in join expression.

Error in join expression: '<0s>' not recognized.

Error in list of function arguments: '<0s>' not recognized.

Error in list of values.

Error in list of values in IN clause.

Error in list of values in IN clause: '<0s>' not recognized

Error in list of values: '<0s>' not recognized.

Error in ON clause near '<0s>'.

Error in optional FROM clause.

Error in ORDER BY clause.

Error in ORDER BY clause near '<0s>'.

Error in SELECT clause: alias '<0s>' not recognized.

Error in SELECT clause: alias not recognized.

Error in SELECT clause: expression near '<0s>'.

Error in set list in UPDATE clause.

Error in table name or view name in DELETE clause.

Error in table name or view name in DELETE clause: '<0s>' not recognized.

Error in table name or view name in INSERT clause.

Error in table name or view name in INSERT clause: '<0s>' not recognized.

Error in table name or view name in UPDATE clause.

Error in text following query statement: '<0s>'.

Error in values list in INSERT INTO clause.

Error in values list in INSERT INTO clause: '<0s>' not recognized.

Error in WHERE clause near '<0s>'.

Error modifying column properties.

Function argument count error.

Identity column '<0s>' in table '<1s>' must have a datatype of int, smallint, tinyint, decimal or numeric with scale of 0.

Ignoring illegal use of ALL.

Ignoring ODBC syntax.

Illegal expression list usage.

Illegal sequence use.

Illegal use of outer join operator.

Incomplete column list.

Incomplete SET clause.

Incomplete values list.

Invalid entries must be resolved before you can exit this pane.

Invalid escape character.

Invalid identifier: '<0s>'.

Invalid name. You must provide a name for this object.

Invalid or missing expression.

Invalid or missing expression near '<0s>'.

Invalid prefix or suffix characters.

Invalid row index: Goto failed.

Invalid text or symbol.

Invalid view name.

Missing escape character in LIKE predicate.

Missing FROM clause.

Missing FROM clause near '<0s>'.

Missing FROM keyword.

Missing FROM keyword near '<0s>'.

Missing INTO keyword.

Missing INTO keyword near '<0s>'.

Missing or incomplete SELECT clause.

Missing pattern in LIKE predicate.

Missing SET keyword.

Missing subquery.

Missing subquery correlation name.

Missing subquery or the operator you entered requires parenthesis.

Must enter either TRUE or FALSE.

Object <0s> does not exist in the database.

ODBC error: <0s>.

One or more selected tables are already on the diagram.

Only one clustered index can be created on table '<0s>'.

Only one ROWGUIDCOL column is allowed per table.

Oracle does not allow full outer joins.

Oracle does not support this join syntax.

Outer join column may not be used with an IN predicate or subquery.

Query Designer cannot open this query file.

Query has executed successfully.

Relationship '<0s>' was modified or deleted since the diagram was loaded.

Row limit value should be between <xxx> and <xxx>.

SQL statement could not be parsed.

SQL Verification.

Syntax error in table reference.

Syntax error in table reference: '<0s>' not recognized.

System errors.

Table '<0s>' is marked for deletion and was not added to the diagram.

Table '<0s>' no longer exists in the database.

The Allow Nulls property can't be set on a column that is part of the primary key.

The Allow Nulls property can't be set on column '<0s>' because it is an identity column.

The columns in table '<0s>' do not match an existing enabled primary key or UNIQUE constraint.

The current version of the ODBC driver is not valid.

The datatype of column '<1s>' in the '<0s>' table can't be changed because it participates in index '<2s>'.

The datatype or size property of '<0s>.<1s>' doesn't match '<2s>.<3s>'.

The Default Value property can't be set on column '<0s>' because it is an identity column.

The existing relationship must have at least one pair of related columns.

The Group By function is not supported in WHERE clauses.

The Identity property can't be set on column '<0s>' because it allows null values.

The Identity property can't be set on column '<0s>' because it has a default value.

The NOT keyword may not be used in a column cell.

The number of selected columns exceeds the number of columns in the target table.

The ORDER BY function is not supported for CREATE TABLE queries.

The outer join operator (+) cannot be used as an OR operand.

The outer join operator (+) cannot be used in QBE.

The primary key or UNIQUE constraint cannot be changed until its existing relationships are deleted.

The primary key or Unique constraint cannot be changed while relationships to the existing primary key or Unique constraint are enforced.

The query cannot be executed because some files are missing or not registered.

The Query Designer does not support the critical ODBC APIs.

The Query Designer does not support the current ODBC API.

The Query Designer supports no more than one data source for this type of query.

The specified OR group number is already in use.

The total size of an index or primary key cannot exceed 256 bytes.

The value you entered is not consistent with the data type of the column.

There are not enough columns to match the subquery select list.

There are not enough columns to match the value list.

There is no unique table in this query.

This ALIAS name is already being used.

This cell contains the text string "<NULL>" which may not be processed correctly.

This IS operator can only be used with NULL or NOT NULL.

This operator cannot be used with columns with data type "uniqueidentifier".

This table is not in the query definition.

Too many characters for field width.

Unable to add constraint.

Unable to create index.

Unable to create relationship.

Unable to locate data source.

Unable to modify table.

Unable to parse expression.

Unable to parse query text.

Unable to parse statement.

Unable to preserve trigger.

Unknown column.

Unknown conversion specification.

Unneccesary use of CONVERT function.

Unsupported SQL.

View already exists in the database.

You are not logged in as the database owner or system administrator. You will not be able to save changes to tables that you do not own.

You may not use a link server object as a destination with this query type.

You may not use ALL with CUBE or ROLLUP.

You may not use an openrowset as a destination with this query type.

You must enter an expression in the Column cell before continuing.

Your entry cannot be converted to a valid datetime value.

Chapter 16 ODBC Error Messages
Appendix A Accessibility for People with Disabilities

Customizing Windows or Windows NT

Accessibility Notes and Utilities to DownloadTo Download the Files

Microsoft Services for People Who Are Deaf or Hard-of-Hearing

Customer ServiceTechnical Assistance

Microsoft Documentation in Alternative Formats

Utilities to Enhance Accessibility

Getting More Accessibility Information

MicrosoftMacintosh Disability SolutionsTrace R&D CenterAssistive Technology Programs and Trained Evaluators

Index

Information in this document is subject to change without notice. The names of companies, products, people, characters, and/or data mentioned herein are fictitious and are in no way intended to represent any real individual, company, product, or event, unless otherwise noted. Complying with all applicable copyright laws is the responsibility of the user. No part of this document may be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose, without the express written permission of Microsoft Corporation.

Microsoft may have patents, patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this document. Except as expressly provided in any written license agreement from Microsoft, the furnishing of this document does not give you any license to these patents, trademarks, copyrights, or other intellectual property.

© 1988-1998 Microsoft Corporation. All rights reserved.

Microsoft, ActiveX, Back Office, Microsoft Press, MSDN, MS-DOS, Outlook, Visual Basic, Win32, Windows, and Windows NT are either registered trademarks or trademarks of Microsoft Corporation in the U.S.A. and/or other countries.

Intel is a registered trademark of Intel Corporation.

Macintosh is a registered trademark of Apple Computer, Inc.

Other product and company names mentioned herein may be the trademarks of their respective owners.

Document No. X03-75528

Printed in the United States of America

Cc917594.spacer(en-us,TechNet.10).gif