Пример #1
0
        public void TestGetAlterTablesQueries()
        {
            var schema = new DatabaseSchema();

            schema.AlterTable("table1")
            .AddColumn("column1")
            .AddColumn("column2")
            .ModifyColumn("column3", ColumnType.Int())
            .ModifyColumn("column4", ColumnType.Int())
            .DropColumn("column5")
            .DropColumn("column6")
            .AddPrimaryKeyConstraint("id")
            .AddForeignKeyConstraint("table2_id", "table2", "id")
            .AddForeignKeyConstraint("table3_id", "table3", "id");

            var service = new MySqlExecutor(schema);

            var result = service.GetAlterTablesQueries();

            Assert.AreEqual(9, result.Count);
            Assert.AreEqual("ALTER TABLE `table1` ADD `column1` VARCHAR(255) COLLATE utf8mb4_unicode_ci NOT NULL;\r", result[0]);
            Assert.AreEqual("ALTER TABLE `table1` ADD `column2` VARCHAR(255) COLLATE utf8mb4_unicode_ci NOT NULL;\r", result[1]);
            Assert.AreEqual("ALTER TABLE `table1` MODIFY COLUMN `column3` INT NOT NULL;\r", result[2]);
            Assert.AreEqual("ALTER TABLE `table1` MODIFY COLUMN `column4` INT NOT NULL;\r", result[3]);
            Assert.AreEqual("ALTER TABLE `table1` DROP COLUMN `column5`;\r", result[4]);
            Assert.AreEqual("ALTER TABLE `table1` DROP COLUMN `column6`;\r", result[5]);
            Assert.AreEqual("ALTER TABLE `table1` ADD PRIMARY KEY (`id`);\r", result[6]);
            Assert.AreEqual("ALTER TABLE `table1` ADD FOREIGN KEY (`table2_id`) REFERENCES `table2`(`id`);\r", result[7]);
            Assert.AreEqual("ALTER TABLE `table1` ADD FOREIGN KEY (`table3_id`) REFERENCES `table3`(`id`);\r", result[8]);
        }
Пример #2
0
        public void TestGetAlterTablesQueries()
        {
            var schema = new DatabaseSchema();

            schema.AlterTable("table1")
            .AddColumn("column1")
            .AddColumn("column2")
            .ModifyColumn("column3", ColumnType.Int())
            .ModifyColumn("column4", ColumnType.Int())
            .DropColumn("column5")
            .DropColumn("column6")
            .AddPrimaryKeyConstraint("id")
            .AddForeignKeyConstraint("table2_id", "table2", "id")
            .AddForeignKeyConstraint("table3_id", "table3", "id");

            var service = new SqlServerExecutor(schema);

            var result = service.GetAlterTablesQueries();

            Assert.AreEqual(9, result.Count);
            Assert.AreEqual("ALTER TABLE [dbo].[table1] ADD [column1] NVARCHAR(255) NOT NULL;\r", result[0]);
            Assert.AreEqual("ALTER TABLE [dbo].[table1] ADD [column2] NVARCHAR(255) NOT NULL;\r", result[1]);
            Assert.AreEqual("ALTER TABLE [dbo].[table1] ALTER COLUMN [column3] INT NOT NULL;\r", result[2]);
            Assert.AreEqual("ALTER TABLE [dbo].[table1] ALTER COLUMN [column4] INT NOT NULL;\r", result[3]);
            Assert.AreEqual("ALTER TABLE [dbo].[table1] DROP COLUMN [column5];\r", result[4]);
            Assert.AreEqual("ALTER TABLE [dbo].[table1] DROP COLUMN [column6];\r", result[5]);
            Assert.AreEqual("ALTER TABLE [dbo].[table1] ADD PRIMARY KEY ([id]);\r", result[6]);
            Assert.AreEqual("ALTER TABLE [dbo].[table1] ADD FOREIGN KEY ([table2_id]) REFERENCES [dbo].[table2]([id]);\r", result[7]);
            Assert.AreEqual("ALTER TABLE [dbo].[table1] ADD FOREIGN KEY ([table3_id]) REFERENCES [dbo].[table3]([id]);\r", result[8]);
        }
Пример #3
0
 public static AlterTableSchema AlterTable(string tableName)
 {
     return(schema.AlterTable(tableName));
 }