예제 #1
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;
     }
 }