2009-11-12 16 views
0

Je fais un utilitaire qui compare 2 bases de données et fait un égal à l'autre en changeant et en ajoutant des objets (tables, vues, UserDefinedDatatypes, par défaut, fonctions, etc etc etc)Comment ajouter une colonne en utilisant SMO avec UserefinedDatatype lorsque ce talble contient déjà des données?

Je suis en train d'ajouter une colonne , pas null avec un typedéfini par l'utilisateur avec une valeur par défaut définie, le problème est le suivant: Je ne peux pas utiliser BindDefault avant que la colonne ne soit ajoutée, car elle n'existe pas (bien sûr) et je ne suis pas en mesure d'ajouter la colonne à la table parce qu'il a des données et dit qu'il doit avoir un défaut défini.

Une autre chose, lorsque j'attribue le DataType, j'ai pensé qu'il pourrait aussi lier la valeur par défaut (parce qu'il est lié à UserDefinedDataType) mais il ne l'a pas non plus fait. J'espère que je me suis fait comprendre.

À l'avance.

PS - je résoudre ce en faisant Nullable = True Mise à jour de la nouvelle collumn avec la valeur defaul BindDefault et Nullable = False

Mais pas une bonne sollution, je voulais apporter des modifications à la table pour plusieurs colonnes et seulement faire l'Alter de la Table à la fin.

Répondre

0

Sûrement il serait plus facile de télécharger ou d'acheter un, basé sur d'autres comparison utilities recommended ici sur StackOverflow. Je suis sérieux avec cette réponse ...

+0

Le problème est que, outre la comparaison, il faut aussi faire d'autres tâches spécifiques à nos applications, tks quand même. –