CORRECTIF : DBCC CHECKTABLE peut échouer si les index sont endommagés

Traductions disponibles Traductions disponibles
Numéro d'article: 299323 - Voir les produits auxquels s'applique cet article
Ancien nº de publication de cet article : F299323
N° DE BOGUE : 235391 (SHILOH_BUGS)
Agrandir tout | Réduire tout

Symptômes

Si vous exécutez DBCC CHECKTABLE sur une table dont les index sont endommagés, la vérification peut se terminer avec l'affichage du message d'erreur suivant :
[Microsoft][Pilote ODBC SQL Server][Canaux nommés]ConnectionCheckForData (PeekNamedPipe()).
[Microsoft][Pilote ODBC SQL Server][Canaux nommés]Connexion interrompue.

Résolution

Pour résoudre ce problème, procurez-vous le dernier Service Pack de SQL Server 2000. Pour plus d'informations, consultez l'article suivant dans la Base de connaissances Microsoft :
290211 INF : Procédures pour obtenir le dernier Service Pack de SQL Server 2000

Contournement

  1. Créez le script pour les objets de base de données. Par exemple, effectuez une copie en bloc (bcp) sortante et une copie en bloc entrante des données dans une nouvelle base de données.
  2. Supprimez toutes les statistiques créées automatiquement.

Statut

Microsoft a confirmé l'existence de ce problème dans SQL Server 2000. Ce problème a été corrigé dans le Service Pack 1 pour SQL Server 2000.

Plus d'informations

Dans les versions antérieures à SQL Server 2000 Service Pack 1 (SP1), le texte suivant apparaît dans le journal des erreurs (lorsque la connexion est interrompue) :
Extrait du vidage de la pile
77F810B5 Module(ntdll+000010B5) (NtGetContextThread+0000000B) 
0092569E Module(sqlservr+0052569E) (utassert_fail(enum UTASSERT_TYPE,char const *,char const *,int,char const *,...)+000002E9)
0083A351 Module(sqlservr+0043A351) (LatchBase::Release(enum LatchBase::LATCH_TYPE)+00000039) 
008E0365 Module(sqlservr+004E0365) (CheckResultSet::Set(class PageId const &,int,unsigned short,int,unsigned short,class PageId const &,int,int,int,int,long,int,unsigned short const *,int,int const * const,short,int,unsigned char const *,int,int)+000004 
77E8314D Module(KERNEL32+0000314D) (SetEvent+0000000C)
-------------------------------------------------------------------------------
2001-05-21 16:09:26.17 spid51    Assertion SQL Server : Fichier :<latch.cpp>, ligne=799 
Échec d'assertion = 'type > NL && type < LASTLATCH'.
2001-05-21 16:09:26.26 spid51    Erreur : 3624, Gravité : 20, État : 1.

Dans SQL Server 2000 SP1, l'erreur doit apparaître sous la forme suivante :
Serveur : Msg 8929, Niveau 16, État 1, Ligne 1
Objet ID = 1549468469 : Erreurs trouvées dans le texte ID = 105872687104 possédé par l'enregistrement de données identifié par RID = (1:359718:4) OBJECTID1 = 1 et OBJECTVALUE1 = 'FUNCLIB_EN ' et OBJECTID2 = 2 et OBJECTVALUE2 = 'EXPL_BOM_SQL ' et OBJECTID3 = 12 et OBJECTVALUE3 = 'FieldF.

Serveur : Msg 8965, Niveau 16, État 1, Ligne 1
Erreur de table : Objet ID = 1549468469. Le noeud text, ntext, ou image à la page (1:362025), slot 1, texte ID = 105872687104 est référencé par la page (1:183752), slot 8, mais n'a pas été vu à l'analyse.
Résultats DBCC pour 'PSPCMPROG'.
Il y a 44936 lignes dans 1893 pages pour l'objet 'PSPCMPROG'.
CHECKTABLE a trouvé 0 erreurs d'allocation et 2 erreurs de cohérence dans la table 'PSPCMPROG' (objet ID = 1549468469).
repair_allow_data_loss est le minimum de niveau de réparation pour les erreurs trouvées par DBCC CHECKTABLE (xyz.dbo.PSPCMPROG).
REMARQUE : l'exécution de NOINDEX n'entraîne pas l'apparition de l'erreur ni l'interruption de la connexion.

Propriétés

Numéro d'article: 299323 - Dernière mise à jour: jeudi 6 novembre 2003 - Version: 3.1
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft SQL Server 2000 Standard
Mots-clés : 
kbbug kbfix kbsqlserv2000bug kbsqlserv2000sp1fix KB299323
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com