예제 #1
0
 private void populateLists() {
     ISqlGenerator gen1 = new SqlServerDatabaseGenerator(null);
     ISqlGenerator gen2 = new MySqlDatabaseGenerator(null);
     ISqlGenerator gen3 = new SqlServerCrudGenerator(null);
     ISqlGenerator gen4 = new MySqlCrudGenerator(null);
     cmbGenerator.Items.Add(new SqlGeneratorItem(gen1.GetName(), gen1));
     cmbGenerator.Items.Add(new SqlGeneratorItem(gen2.GetName(), gen2));
     cmbGenerator.Items.Add(new SqlGeneratorItem(gen3.GetName(), gen3));
     cmbGenerator.Items.Add(new SqlGeneratorItem(gen4.GetName(), gen4));
     
     cmbTypeMap.Items.Add(new TypeMapItem("No Type Map", null));
     ResourceManager resMan = new ResourceManager();
     foreach (TypeMap tm in resMan.GetDatabaseTypeMaps())
     {
         TypeMapItem item = new TypeMapItem(tm.Name, tm);
         cmbTypeMap.Items.Add(item);
     }
     cmbTypeMap.Items.Add(new TypeMapItem("Custom", null));
 }
예제 #2
0
 public override void Execute(IDictionary<string, object> scope)
 {
     try
     {
         this.Status = OperationStatus.RUNNING;
         SqlConnection conn = scope["CONNECTION"] as SqlConnection;
         DatabaseExplorer exp = new DatabaseExplorer(conn, new SQLServerDefaultConf());
         Schema schema = scope["SCHEMA"] as Schema;
         SqlServerCrudGenerator gen = new SqlServerCrudGenerator(null);
         string script = gen.Generate(schema);
         Microsoft.SqlServer.Management.Smo.Server server = new Microsoft.SqlServer.Management.Smo.Server(new ServerConnection(conn));
         server.ConnectionContext.ExecuteNonQuery(script);
         Status = OperationStatus.COMPLETED;
     }
     catch (Exception ex)
     {
         this.Exception = ex;
         this.Status = OperationStatus.FAILED;
         throw ex;
     }
 }