public void CreateNewTables() { var sm = new SchemaMerge <PostulateDb>(); using (IDbConnection cn = sm.GetConnection()) { cn.Open(); sm.Execute(cn); Assert.IsTrue(AllTablesExist(cn, "TableA", "TableB", "TableC")); } }
public void CreateNewKeyColumnsInNonEmptyTable() { var sm = new SchemaMerge <PostulateDb>(); using (IDbConnection cn = sm.GetConnection()) { cn.Open(); // create tables A, B, and C sm.Execute(cn); var record = new TableA() { FirstName = "Adam", LastName = "O'Neil" }; new PostulateDb().Save(record); } }
public void CreateNewKeyColumnsInEmptyTable() { var sm = new SchemaMerge <PostulateDb>(); using (IDbConnection cn = sm.GetConnection()) { cn.Open(); // create tables A, B, and C sm.Execute(cn); // drop PK on table A cn.Execute("ALTER TABLE [dbo].[TableA] DROP CONSTRAINT [PK_TableA]"); cn.Execute("ALTER TABLE [dbo].[TableA] DROP COLUMN [LastName]"); // restore them along with primary key sm.Execute(cn); Assert.IsTrue(PKColumnsEqual(cn, "TableA", "FirstName", "LastName")); } }
public void CreateNewNonKeyColumns() { var sm = new SchemaMerge <PostulateDb>(); using (IDbConnection cn = sm.GetConnection()) { cn.Open(); // create tables A, B, and C sm.Execute(cn); // drop a few columns cn.Execute("ALTER TABLE [dbo].[TableC] DROP COLUMN [SomeDate]"); cn.Execute("ALTER TABLE [dbo].[TableC] DROP COLUMN [SomeDouble]"); // add them back sm.Execute(cn); Assert.IsTrue(AllColumnsExist(cn, "TableC", "SomeDate", "SomeDouble")); } }