2009-05-11 9 views

Répondre

2

+1 sur le précipité. Ces procs sont généralement utilisés par la réplication ou les outils de gestion, ils ne sont pas documentés car l'équipe de développement se réserve le droit de les modifier à tout moment. Beaucoup ont changé au cours des années, en particulier dans SQL 2000 Sp3 et SQL 2005

1

Ma spéculation serait parce qu'ils sont utilisés en interne et non pris en charge, et pourraient changer. sp_who2 est un autre que je trouve très pratique. Peut-être que le moniteur d'activité de studio de gestion utilise cette même sortie. Ai-je mentionné sans-papiers signifie probablement non pris en charge? Ne comptez pas sur ceux-ci pour rester ou produire les mêmes résultats l'année prochaine.

1

sp_MSforeachdb et sp_MSforeachtable sont susceptibles de changer.

deux peuvent être utilisés comme ceci:

EXEC sp_MSforeachtable "print '?'; DBCC DBREINDEX ('?')" 

où le point d'interrogation? est remplacé par le nom de table (ou le nom de la base de données dans l'autre sp).

+0

Certes, il est peu probable que cela change, mais ce n'est pas garanti. Ils sont sans papiers pour une raison après tout. Personnellement, je ne me sentirais pas à l'aise de déployer une solution Enterprise Class reposant sur une technologie qui n'est pas officiellement prise en charge. Il est assez simple de produire votre propre implémentation personnalisée de cette fonctionnalité à laquelle vous gardez bien sûr le contrôle total. –

1

Undocumented signifie pas pris en charge et qui se réserve le droit de MS modifier ou supprimer lesdites commandes à tout moment sans aucun préavis.

Toutes les fonctionnalités documentées passent par deux étapes de dépréciation avant d'être supprimées. Une commande non documentée peut être supprimée, même dans un Service Pack ou un correctif, sans aucun avertissement ou aucune annonce.

1

Il est fort probable que l'un des développeurs de Sql Server interne avait besoin de ces procédures stockées pour implémenter la fonctionnalité qu'ils travaillaient, donc ils ont développé et utilisé dans leur code. En travaillant avec les personnes de documentation technique, ils ont couvert la portée de leur projet, et ont inclus dans la documentation officielle seulement la partie de leur projet qui s'appliquait au client. Au fil du temps, les gens ont trouvé les procédures stockées supplémentaires (parce que vous ne pouvez pas les cacher) et ont commencé à les utiliser. Alors que les développeurs internes de SQl Server ne voudraient pas changer ces procédures non documentées, je suis sûr qu'ils le feraient dans deux secondes s'ils devaient le faire pour leur prochain projet.

0

Comme d'autres l'ont dit, ils sont caractéristiques non pris en charge qui ne sont pas destinés à la consommation générale, bien qu'ils ne peuvent pas vous empêcher d'avoir un aller, et même, parfois, ils peuvent être très utiles.

Mais comme code interne, ils pourraient avoir des effets secondaires inattendus ou des limitations, et peut-être ici un jour et allé le prochain.

Utilisez-les avec soin si vous le souhaitez, mais ne comptez pas entièrement sur eux.

Questions connexes