2010-10-15 18 views
1

J'ai un problème lorsque j'essaie de générer une insertion de script avec des conditions spécifiques.Générer un script Insérer .net

Jusqu'à présent, j'essaie déjà cette étape.

  1. Ajouter des références Microsoft.SqlServer.ConnectionInfo et Microsoft.SqlServer.Smo

  2. Ajouter une référence dans le code Microsoft.SqlServer.Management.Smo

  3. Ajouter ce au script.

    var srv = new Server(@"localhost\SQLEXPRESS"); 
        var db = srv.Databases["Northwind"]; 
        foreach (Microsoft.SqlServer.Management.Smo.Table tab in db.Tables) 
        { 
         foreach (string s in tab.Script()) 
         { 
          File.AppendAllText("sql_insert_conditioanl.sql", s); 
         } 
        } 
    

Script "sql_insert_conditioanl.sql" ne contiennent que pour créer la base de données et créer la table qui existent dans la base de données "Northwind".

Donc je fais des recherches sur ce problème. Essayer la méthode de changement "Script" sans paramètre au paramètre "ScriptingOptions" réf link. Je continue à confondre avec l'utilisation des options de script de paramètre. Ensuite, essayant également d'utiliser la méthode protégée.

Mais comme il est protégé, je ne peux pas tester la méthode (comme: Méthode "ScriptAlter").

Regard

Répondre

0

Vous devez générer des scripts pour tous les objets de base de données - par exemple des indices, des procédures stockées, vues, etc. Voir cette article (et ses articles connexes) pour commencer.