2009-09-12 8 views
10

Selon MSDN BOL (documentation en ligne) sur SET ANSI_PADDING,Pourquoi SQL Server désapprouve SET ANSI_PADDING OFF?

Dans une future version de Microsoft SQL Server ANSI_PADDING sera toujours sur et toutes les applications qui définissent explicitement l'option sur OFF produira une erreur. Évitez d'utiliser cette fonctionnalité dans les nouveaux travaux de développement et prévoyez de modifier les applications qui utilisent actuellement cette fonctionnalité.

Je n'ai jamais utilisé cette option, mais il semble que cela peut en fait économiser beaucoup d'espaces de base de données pour char et varbinary champs si elles sont utilisées correctement.

Pourquoi le SET ANSI_PADDING devient-il obsolète, à part le fait qu'il n'est pas conforme à la norme ANSI?

Y a-t-il de bonnes raisons pourquoi?

Répondre

10

Pas une réponse, juste une opinion:

Personnellement, je voudrais croire qu'ils le retirer parce qu'il est une douleur nulling dans le vide. Si un objet de base de données est créé, utilisé, référencé, ou autre avec ON, un second est désactivé, et vous essayez de travailler avec les deux en même temps (deux tables, table de référence de procédure, etc.), Vos résultats peuvent être inconsistants ou ne pas avoir de sens, et il vous faudra pour toujours pour savoir ce qui se passe.

(.. Il existe d'autres paramètres SET comme celui-ci, et pire encore je l'espère, ils les désapprouvent tous)

+0

Eh bien votre opinion est logique pour moi comme une réponse;) Merci Philippe – Sung

5

Cette fonctionnalité n'a pas été utilisée du tout et elle n'est pas non plus conforme à la norme ANSI. Elle sera donc supprimée. L'économie d'espace peut être faite indépendamment de ansi_padding, le serveur sql peut supprimer le padding en interne.

Questions connexes