Tuesday, March 12, 2013

SQL Server Compact Code Snippet of the Week #10 : generate a CREATE TABLE script

Another entry in the scripting API samples, you will find an overview of getting started with the API here.

This weeks entry demonstrates the general pattern for scripting smaller chunks of SQL based on a single table, in this case a CREATE TABLE statement. The statement will also include any indexes and primary/foreign keys.

using (IRepository repository = new DBRepository(@"Data Source=C:\Northwind.sdf"))
{
Generator generator = new Generator(repository, null);
foreach (var tableName in repository.GetAllTableNames())
{
generator.GenerateTableScript(tableName);
}
System.IO.File.WriteAllText(@"C:\script.sqlce", generator.GeneratedScript);
}

The Generator / Generator4 class contains many methods to generate various script snippets, some of them listed here. After a number of GenerateXx calls, you can use the GeneratedScript property to get the accumulated script.

No comments: