@TableName SYSNAME, -- The name of the source table. This parameter is mandatory.
-- If the table's schema is not default (dbo), then please specify the
-- schema name as well as part of the parameter.
@NewTableName SYSNAME = NULL, -- The name of the new (target) table. You may also include database and schema as part of the name.
-- If not specified, same name as source table will be used.
@Result NVARCHAR(MAX) OUTPUT, -- Output textual parameter that will contain the result TSQL command for creating the table.
@IncludeDefaults BIT = 1, -- Set whether to include default constraints
@IncludeCheckConstraints BIT = 1, -- Set whether to include check constraints
@IncludeForeignKeys BIT = 1, -- Set whether to include foreign key constraints
@IncludeIndexes BIT = 1, -- Set whether to include indexes
@IncludePrimaryKey BIT = 1, -- Set whether to include primary key constraints
@IncludeIdentity BIT = 1, -- Set whether to include identity property
@IncludeUniqueIndexes BIT = 1, -- Set whether to include unique index constraints
@IncludeComputedColumns BIT = 1, -- Set whether to include computed columns (if not, they will also be automatically ignored by constraints and indexes)
@UseSystemDataTypes BIT = 0, -- Set whether to use system data type names instead of user data type names
@ConstraintsNameAppend SYSNAME = '',-- This is an optional text string to append to constraint names,
-- in order to avoid the duplicate object name exception.
-- This is useful when creating the new table within the same database.
@Verbose BIT = 0 -- Optional parameter. If set to 1, will display informative messages, and will output a table representing the table fields