public void Check( [Option(LongName = "connectionString", ShortName = "c")] string connectionString, [Option(LongName = "sqlType", ShortName = "t")] string sqlType, [Option(LongName = "patternFileName", ShortName = "p")] string patternFileName, [Option(LongName = "flags", ShortName = "f")] List <string> flags) { var version = SqlEngineVersions.GetVersion(sqlType); var connString = new NamedConnectionString( version.GetType().Name, version.ProviderName, connectionString, version.VersionString); var context = CreateContext(version); var sqlExecuter = SqlExecuterFactory.CreateSqlExecuter(connString, context); var databaseName = sqlExecuter.GetDatabase(); var ddlReader = DataDefinitionReaderFactory.CreateDataDefinitionReader(connString, context, null); var dd = ddlReader.GetDatabaseDefinition(); var documenterContext = CreateDocumenterContext(context, patternFileName); if (flags != null) { SetSettingsFromFlags(flags, documenterContext.DocumenterSettings); } var schemaCheckerDocumenter = new SchemaCheckerDocumenter(documenterContext, version, databaseName, null); schemaCheckerDocumenter.Document(dd); }
public void DropAll( [Option(LongName = "connectionString", ShortName = "c")] string connectionString, [Option(LongName = "sqlType", ShortName = "t")] string sqlType ) { var version = SqlEngineVersions.GetVersion(sqlType); var connString = new NamedConnectionString("", version.ProviderName, connectionString, version.VersionString); var context = CreateContext(version); var generator = SqlGeneratorFactory.CreateGenerator(version, context); var executer = SqlExecuterFactory.CreateSqlExecuter(connString, generator); var dc = new DatabaseCreator(null, executer); dc.DropAllViews(); dc.DropAllForeignKeys(); dc.DropAllTables(); // TODO needs databasedefinition // dc.DropAllSchemas(); }
protected override ISqlExecuter Open() { var conn = @"server=127.0.0.1;uid=sa;pwd=123456;database=b2c_admin"; return(SqlExecuterFactory.SqlServer(conn)); }
protected override ISqlExecuter Open() { var conn = @"server=127.0.0.1;port=3306;sslmode=none;uid=sa;pwd=123456;database=b2c_admin"; return(SqlExecuterFactory.MySql(conn)); }
public void ChangeDocument( [Option(LongName = "connectionStringOriginal")] string connectionStringOriginal, [Option(LongName = "connectionStringNew")] string connectionStringNew, [Option(LongName = "sqlTypeOriginal")] string sqlTypeOriginal, [Option(LongName = "sqlTypeNew")] string sqlTypeNew, [Option(LongName = "patternFileName", ShortName = "p")] string patternFileName, [Option(LongName = "patternFileNameOriginal")] string patternFileNameOriginal, [Option(LongName = "patternFileNameNew")] string patternFileNameNew, [Option(LongName = "flags", ShortName = "f")] List <string> flags) { var versionOriginal = SqlEngineVersions.GetVersion(sqlTypeOriginal); var contextOriginal = CreateContext(versionOriginal); var connString = new NamedConnectionString( versionOriginal.GetType().Name, versionOriginal.ProviderName, connectionStringOriginal, versionOriginal.VersionString); var sqlExecuterOriginal = SqlExecuterFactory.CreateSqlExecuter(connString, contextOriginal); var databaseNameOriginal = sqlExecuterOriginal.GetDatabase(); var ddlReaderOriginal = DataDefinitionReaderFactory.CreateDataDefinitionReader(connString, contextOriginal, null); //var ddOriginal = ddlReaderOriginal.GetDatabaseDefinition(); var ddOriginalTask = Task.Run(() => ddlReaderOriginal.GetDatabaseDefinition()); if (patternFileNameOriginal == null) { patternFileNameOriginal = patternFileName; } if (patternFileNameNew == null) { patternFileNameNew = patternFileName; } var changeDocumenterContext = CreateChangeDocumenterContext(contextOriginal, patternFileNameOriginal, patternFileNameNew); if (flags != null) { SetSettingsFromFlags(flags, changeDocumenterContext.DocumenterSettings); } var versionNew = SqlEngineVersions.GetVersion(sqlTypeNew); var contextNew = CreateContext(versionNew); var connStringNew = new NamedConnectionString( versionNew.GetType().Name, versionNew.ProviderName, connectionStringNew, versionNew.VersionString); var sqlExecuterNew = SqlExecuterFactory.CreateSqlExecuter(connStringNew, contextNew); var databaseNameNew = sqlExecuterNew.GetDatabase(); var ddlReaderNew = DataDefinitionReaderFactory.CreateDataDefinitionReader(connStringNew, contextNew, null); //var ddNew = ddlReaderNew.GetDatabaseDefinition(); var ddNewTask = Task.Run(() => ddlReaderNew.GetDatabaseDefinition()); var changeDocumenter = new ChangeDocumenter(changeDocumenterContext, versionOriginal, databaseNameOriginal, databaseNameNew); var ddOriginal = ddOriginalTask.Result; var ddNew = ddNewTask.Result; changeDocumenter.Document(ddOriginal, ddNew); }