public void TestSqlServerCeSchema()
        {
            //arrange
            var schema = new DatabaseSchema(null, SqlType.SqlServerCe);
            //two tables with a FK between them
            schema.AddTable("Categories")
                  .AddColumn<int>("Id").AddIdentity().AddPrimaryKey()
                  .AddColumn<string>("Name").AddLength(200)
                  .AddTable("Products")
                  .AddColumn<int>("Id").AddIdentity().AddPrimaryKey()
                  .AddColumn<string>("Name").AddLength(200)
                  .AddColumn<int>("CategoryId").AddForeignKey("Categories")
                  ;
            var factory = new DdlGeneratorFactory(SqlType.SqlServerCe);
            var tablesGenerator = factory.AllTablesGenerator(schema);
            tablesGenerator.IncludeSchema = false;

            //act
            var ddl = tablesGenerator.Write();

            //assert
            Assert.IsTrue(ddl.Contains("GO")); //batch separators
            Assert.IsFalse(ddl.Contains(";")); //valid but useless in SqlServer CE because you can't batch
        }
 private static string CreateDatabaseScript(DatabaseSchema schema)
 {
     var ddlFactory = new DdlGeneratorFactory(SqlType.SQLite);
     var generator = ddlFactory.AllTablesGenerator(schema);
     return generator.Write();
 }