public void GenerateInsertStatmentsForDatabase(DatabaseContainer database) { ISQLGenerator generator = SqlGeneratorFactory.Factory(database.DatabaseType); this._database = database; textBoxOutput.Text = generator.GenerateInsertStatmentsForDatabase(this._database); }
public void NewTableTest(SqlEngineVersion version) { _sqlExecuterTestAdapter.Check(version); var dd = new TestDatabaseSimple(); _sqlExecuterTestAdapter.InitializeAndCreate(version.UniqueName, dd); var context = new Context { Settings = TestHelper.GetDefaultTestSettings(version), Logger = TestHelper.CreateLogger() }; var migrationGenerator = SqlGeneratorFactory.CreateMigrationGenerator(version, context); var executer = _sqlExecuterTestAdapter.GetExecuter(version.UniqueName); var databaseMigrator = new DatabaseMigrator(executer, migrationGenerator); var tableNew = new TableNew { SchemaAndTableName = "NewTableToMigrate" }; ((SqlTable)tableNew).AddInt32("Id", false).SetPK().SetIdentity(); new PrimaryKeyNamingDefaultStrategy().SetPrimaryKeyName(tableNew.Properties.OfType <PrimaryKey>().First()); ((SqlTable)tableNew).AddNVarChar("Name", 100); dd.AddTable(tableNew); databaseMigrator.NewTable(tableNew); }
public void SqlGeneratorFactory_Access() { var databaseType = DatabaseType.Access; var expectedSqlGeneratorType = typeof(AccessSqlGenerator); var sqlGenerator = new SqlGeneratorFactory().CreateSqlGenerator(databaseType); Assert.IsTrue(expectedSqlGeneratorType.Equals(sqlGenerator.GetType())); }
public void SqlGeneratorFactory_Redshift() { var databaseType = DatabaseType.Redshift; var expectedSqlGeneratorType = typeof(RedshiftSqlGenerator); var sqlGenerator = new SqlGeneratorFactory().CreateSqlGenerator(databaseType); Assert.IsTrue(expectedSqlGeneratorType.Equals(sqlGenerator.GetType())); }
public void SqlGeneratorFactory_SQLServer() { var databaseType = DatabaseType.SqlServer; var expectedSqlGeneratorType = typeof(SqlServerSqlGenerator); var sqlGenerator = new SqlGeneratorFactory().CreateSqlGenerator(databaseType); Assert.IsTrue(expectedSqlGeneratorType.Equals(sqlGenerator.GetType())); }
public void SqlGeneratorFactory_PostgreSQL() { var databaseType = DatabaseType.PostgreSQL; var expectedSqlGeneratorType = typeof(PgSqlGenerator); var sqlGenerator = new SqlGeneratorFactory().CreateSqlGenerator(databaseType); Assert.IsTrue(expectedSqlGeneratorType.Equals(sqlGenerator.GetType())); }
private void postgresToolStripMenuItem_Click(object sender, EventArgs e) { var clonedDatabase = this._database.Clone(); clonedDatabase.TransformToPostgres(); this._userControlGenerate.Generate(clonedDatabase, SqlGeneratorFactory.Factory(DatabaseContainer.DatabaseTypePostgreSQL)); this.setPanelUserControl(this._userControlGenerate); }
#pragma warning disable IDE1006 // Naming Styles public void _020_DropTable(SqlEngineVersion version) #pragma warning restore IDE1006 // Naming Styles { _sqlExecuterTestAdapter.Check(version); _sqlExecuterTestAdapter.Initialize(version.UniqueName); var table = new SqlTable("HierarchyFromCsvToSqlTests"); var generator = SqlGeneratorFactory.CreateGenerator(version, _sqlExecuterTestAdapter.GetContext(version)); var sql = generator.DropTable(table); var result = _sqlExecuterTestAdapter.ExecuteNonQuery(version.UniqueName, sql); if (result != null) { Assert.Inconclusive(result); } }
public void Execute() { var context = new ObjectBuilderContext { Options = _dataProvider.Options }; var treeBuilderFactory = new TreeBuilderFactory(_objectBuilderConfig); var treeBuilder = treeBuilderFactory.GetTreeBuilder(context); treeBuilder.GenerateAnalysisTree(context); var sqlGeneratorFactory = new SqlGeneratorFactory(_objectBuilderConfig); var sqlGenerator = sqlGeneratorFactory.GetSqlGenerator(context); sqlGenerator.GenerateSql(context); var sqlExecutorFactory = new SqlExecutorFactory(_objectBuilderConfig); var sqlExecutor = sqlExecutorFactory.GetSqlExecutor(context); sqlExecutor.ExecuteQuery(context); }
#pragma warning disable IDE1006 // Naming Styles public void _010_GenerateScriptAndCreateTable(SqlEngineVersion version) #pragma warning restore IDE1006 // Naming Styles { _sqlExecuterTestAdapter.Check(version); _sqlExecuterTestAdapter.InitializeAndCreate(version.UniqueName); var dd = new DatabaseDefinition(null, new[] { MsSqlVersion.MsSql2016.GetTypeMapper(), OracleVersion.Oracle12c.GetTypeMapper(), SqLiteVersion.SqLite3.GetTypeMapper() }); var table = new SqlTable("HierarchyFromCsvToSqlTests"); var column = table.AddInt32("Id"); column.Properties.Add(new Identity(column) { Increment = 1, Seed = 1 }); table.AddNVarChar("Name", 100); dd.AddTable(table); var context = new Context { Settings = TestHelper.GetDefaultTestSettings(version), Logger = TestHelper.CreateLogger() }; var generator = SqlGeneratorFactory.CreateGenerator(version, context); var sql = generator.CreateTable(table); var result = _sqlExecuterTestAdapter.ExecuteNonQuery(version.UniqueName, sql); if (result != null) { Assert.Inconclusive(result); } }
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(); }
public void CreateDbConnection_BadDatabaseType() { var databaseType = (DatabaseType)15; var databaseConnection = new SqlGeneratorFactory().CreateSqlGenerator(databaseType); }
public void FkCheckNoCheckTest() { var version = MsSqlVersion.MsSql2016; var dd = new TestDatabaseFk(); dd.SetVersions(version.GetTypeMapper()); Init(version, dd); var ddlReader = DataDefinitionReaderFactory.CreateDataDefinitionReader( SqlExecuterTestAdapter.ConnectionStrings[version.UniqueName] , SqlExecuterTestAdapter.GetContext(version), dd.GetSchemaNames().ToList()); var ddInDatabase = ddlReader.GetDatabaseDefinition(); var fk = dd.GetTable("Foreign").Properties.OfType <ForeignKey>().First(); Assert.AreEqual("true", fk.SqlEngineVersionSpecificProperties[version, "Nocheck"]); fk.SqlEngineVersionSpecificProperties[version, "Nocheck"] = "false"; var comparer = new Comparer(SqlExecuterTestAdapter.GetContext(version)); var changes = comparer.Compare(ddInDatabase, dd); _ = changes[0] as ForeignKeyChange; _ = new DatabaseMigrator(SqlExecuterTestAdapter.GetExecuter(version.UniqueName), SqlGeneratorFactory.CreateMigrationGenerator(version, SqlExecuterTestAdapter.GetContext(version))); // TODO change FK // databaseMigrator. }
private static DatabaseMigrator ProcessAndGetMigrator(SqlEngineVersion version, DatabaseDefinitions dds, out List <IMigration> changes) { Init(version, dds.Original); var ddlReader = DataDefinitionReaderFactory.CreateDataDefinitionReader(SqlExecuterTestAdapter.ConnectionStrings[version.UniqueName], SqlExecuterTestAdapter.GetContext(version), dds.Original.GetSchemaNames().ToList()); var ddInDatabase = ddlReader.GetDatabaseDefinition(); var comparer = new Comparer(SqlExecuterTestAdapter.GetContext(version)); changes = comparer.Compare(ddInDatabase, dds.New); var databaseMigrator = new DatabaseMigrator(SqlExecuterTestAdapter.GetExecuter(version.UniqueName), SqlGeneratorFactory.CreateMigrationGenerator(version, SqlExecuterTestAdapter.GetContext(version))); return(databaseMigrator); }