ApexSQL Script release notes

Release: 2011.02.0212
Date: February 26, 2013
Description: Hot-fix release

Fixes:

  • Explicit permissions on SQL schemas are not scripted even if the "Script permissions" option has been turned on

Release: 2011.02.0211
Date: February 08, 2013
Description: Hot-fix release

Enhancements:

  • Extended properties of SQL objects can now be scripted via the new CLI switch "/scr_ex_properties"

Changes:

  • The "/no_scr_ex_properties" CLI switch has been renamed to "/scr_ex_properties", and it enables SQL object's extended properties to be scripted via the CLI

Release: 2011.02.0210
Date: July 03, 2012
Description: Medium feature, minor fix release

Enhancements:

  • The following SQL Server 2012 object types are now fully supported:
    • Sequence
    • Search property list
  • 'SQL Server 2012 Management Studio' output editor setting has been added to the Options form to allow opening the synchronization script in SQL Server 2012 Management Studio

Fixes:

  • Data grid doesn't have filter conditions dropdown button menu in the right corner of the Name column filter cell
  • 'Microsoft.VC80.CRT' unneeded folder is created during installation in the application installation folder
  • Project Settings dialog Object filter step Common Object Types checkboxes are horizontally misaligned
  • Main grid object filter grouping is not preserved between application sessions
  • Connection options in Select databases step of Project Settings dialog can be modified while database list is updated
  • Two online help documentation pages are opened when F1 keyboard shortcut is used to request help in Extend property editor

Release: 2011.01.0209
Date: October 27, 2011
Description: Major feature, major fix release

Enhancements:

  • SQL Server Denali databases can now be scripted including the following new features: Search property list name attribute for Fulltext Indexes Poison message handling attribute for Queues Geometry and Geography Auto Grid tessellation scheme for Spatial Indexes File Tables Column Store indexes
  • Fulltext Stoplists are now fully supported
  • SQL Server 2005 and higher version encrypted objects can now be scripted (requires membership in the sysadmin server role)
  • Extended property editor has been implemented in the application
  • Progress dialogs have been redesigned across the application for improved accuracy and usability
  • New Office 2007 style interface with ribbon bar, quick access toolbar, and ApexSQL Script button
  • New Resources ribbon bar is introduced for quick access to Help page, Support forum, Training page, FAQs, Knowledge base, Troubleshooting, About and Get Updates dialog boxes
  • Options dialog box has been redesigned with new Office 2007 button bar
  • Project Defaults can now be defined for newly created projects
  • Project options can now be saved as current user defaults settings
  • Project options can now be reset either to current user or to ApexSQL defaults
  • Tooltips with option description are shown for Project options
  • Project Management dialog box now shows recently used projects or projects saved in any folder of choice
  • Projects can be Pinned/Un-Pined to Recent Projects list on Project Management dialog box
  • Projects can be opened directly from Project Management dialog box
  • Project description can be edited directly from Project Management dialog box
  • 'Show on Startup' option has been added to Project Management dialog box
  • Output type and Scripting mode are shown directly in Project Management dialog box for selected project
  • Show Advanced Tabs button in Project Management dialog box displays additional steps (Script Formatting, Package, Schema Mapping, Object Filter and Additional Scripts)
  • Dependent objects can now be viewed and selected for scripting individually on Dependencies step of Script wizard
  • Script editor can now be selected on Output Options step of Script wizard
  • Results grid supports 3 predefined grouping types: Group by database, Group by object type and Group by both database and object type
  • New Object Filter that allows setting filter both for particular object type and for all types has been introduced for Structure grid
  • Object Filter allows defining filtering criteria using Filter Editor
  • Filter Editor allows to interactively create filtering expressions using Name and Schema fields
  • Filter Editor allows to filter script objects based on 'Exclude if' or 'Include if' conditions
  • Filter Editor criteria can use the following comparison operators: 'Equal', 'Not Equal', 'Between', 'Not between', 'Contains', 'Not contains', 'Begins with', 'Ends with', 'Any of' and 'None of' and the following logical operators: 'And', 'And not', 'Or' and 'Or not'
  • Object Filter settings can be exported to or imported from a file
  • Object Filter items can be grouped by SQL Object Type or by Category
  • Number of selected objects and number of filtered objects are now displayed in main window status bar
  • Startup action ('Show Project Management dialog', 'Show last opened project' and 'None') can now be set in Options dialog box
  • Application can now be presented in 3 color schemes: Blue, Silver and Black
  • Script wizard now indicates numbers of databases and objects selected for scripting
  • Output options have been redesigned for improved usability

Fixes:

  • System databases cannot be selected in CLI
  • Application adds an extra column to the key when scripting non-clustered indexes on partitioned tables
  • "Object reference not set to an instance of an object" error is encountered when saving an existing project opened with the use of Windows extension handling
  • No settings is restored from an existing project opened with the use of Windows extension handling
  • "Object reference not set to an instance of an object" error is encountered when executing generated .NET package on a machine with no SQL Server installed
  • Dbo schema isn't displayed in main grid and cannot be scripted
  • Custom extensions are not applied when scripting to individual files
  • "System.IO.PathTooLongException" exception is encountered when saving generated C# solution with too long name
  • View data is scripted by default with /mode:both specified in CLI
  • Same alias can be assigned to more than one table in data mode
  • 'The application's folder is read-only' error is encountered on application startup if application folder is read-only
  • Partition Function parameters of nchar and nvarchar data types get scripted with incorrect length
  • Extended properties get scripted in different order depending on SQL Server version
  • Schema bound Functions and their dependencies get ordered incorrectly in generated scripts
  • Functions don’t get identified as dependencies when referenced in DECLARE statements
  • Different warnings are displayed when setting the same working folder for different projects depending on Native Source Control driver used
  • Xml values containing Unicode characters get scripted incorrectly
  • Aliases are not applied to ALTER TABLE, comments and PRINT statements in data mode
  • Individual Object Scripting Results dialog is not shown when scripting to Source Control
  • Paths to database files vs folders are offered as default settings for Database and Log Directory options of .NET package
  • Real values may be scripted with precision loss depending on its length
  • Binary values stored in sql_variant data type get scripted incorrectly
  • Date and time values may be formatted incorrectly in generated scripts
  • Decimal/numeric and binary values of maximal allowed length are not scripted
  • Text values containing Unicode characters get scripted incorrectly

Changes:

  • Switching between Data and Structure grids in main window are now done through tabs
  • Regular Help button has been replaced with question mark button in title bar on all dialogs and windows
  • The following options have been moved to Project Setting form Script wizard Schema Mapping Common Script Processing Structure scripting Data scripting Script formatting

Release: 2008.02.0207
Date: October 6, 2009
Description: Medium feature, minor fix release

Enhancements:

  • Application is now able to script to the following Source Control systems via the ApexSQL Source Control add-in: Subversion Team Foundation Server SourceGear Vault Microsoft Visual SourceSafe
  • Scripting to Source Control systems is now done via Source Control wizard
  • New Folder Mapping tab was added to Options form
  • Object type folders can now be configured separately when scripting to folder
  • Objects are now shown grouped by database in main grid
  • Databases can now be scripted to separate files via 'Create separate file for each database' option in single file mode
  • The following new object types are now supported: Event Notifications Remote Service Bindings Aggregates CLR Functions CLR Procedures CLR Triggers
  • It's now possible to add comments to and label scripted files when scripting to Source Control systems via the ApexSQL Source Control add-in

Fixes:

  • Check constraints are scripted with extra line break before GO
  • Script "Use for Database" and "Script Update Statements" options have the same hotkeys in Script Wizard
  • Connect button is always enabled in Project Wizard
  • Manage Project, Project Properties, Add SQL Server, and View DDL forms point to non-existing help pages
  • FILESTREAM filegroups are incorrectly scripted in CREATE DATABASE statements
  • Filename templates aren't validated in Script Wizard

Changes:

  • When generated script can't be opened with internal editor (when it's >3MB in size), user is offered to save the script and open it in another editor
  • All selected objects from all selected databases are now shown in main grid when Project Wizard closes
  • Database Explorer panel has been removed
  • Script Wizard's Source Control Settings step has been removed
  • Multiple file mode's Filename Template option has been removed
  • {extension} object tag has been removed
  • Extension column in Object Tags tab (under Options) has been removed
  • The following new switches have been added to CLI: /sourcecontrol_type - specifies supported Source Control type (microsoftvisualsourcesafe, subversion, sourcegearvault, teamfoundationserver) /sourcecontrol_server - specifies server /sourcecontrol_user - specifies user /sourcecontrol_password - specifies user password (used with /sourcecontrol_user switch) /sourcecontrol_project - specifies project /sourcecontrol_repository - specifies repository /sourcecontrol_working_folder - specifies working folder /create_file - creates separate file for each database in single file mode /folder_mapping - specifies folder mapping file (default mappings if omitted)
  • The following CLI switches have been removed: /create_dir /source_safe /vss_config /vss_user /vss_password /vss_project /vault /vault_server /vault_repository /vault_user /vault_password /vault_project /output_file
  • Application roles are now treated as regular database roles everywhere in application

Release: 2008.01.0205
Date: April 14, 2009
Description: Major feature release

Enhancements:

  • Support for SQL Server 2008 table-valued user-defined types
  • Support for SQL Server 2008 SPARSE columns
  • Support for SQL Server 2008 FILE_STREAM columns
  • Support for SQL Server 2008 DATA_COMPRESSION option
  • Support for SQL Server 2008 READONLY parameters of SQL Server 2008 procedures
  • Support for SQL Server 2008 Geometry, Geography, HierarchyID, Time, Date, Datetime2, Datetimeoffset types
  • Support for SQL Server 2008 XML_COLUMN_SET columns
  • Support for SQL Server 2008 CRYPTOGRAPHIC_PROVIDER credential attribute
  • New “Manage Projects” form instead of Project step of Project Wizard
  • Added "Script USE for Database" option to "General" page in "Data Only" mode

Release: 2005.11.0200
Date: May 1, 2005
Description: Medium fix release

Enhancements:

  • New and Improved dependency parsing engine
  • Ability to script out database extended properties
  • Support for SQL Server 2000 Full Text Catalogs
  • Warning displayed when user is not a member of 'db_owner'

Fixes:

  • "Out of memory" exception when executing packages with large scripts
  • Incorrect ordering of DELETE statements in data scripts
  • Incorrect insert statements generated for sql variant fields
  • Incorrect update statements generated for image fields
  • Field selection disappears when data grid is refreshed
  • Duplicate file name extension for package names that are set using CLI
  • Incorrect regular expression processing for /inc and /exc switches in CLI
  • Wrong settings for default database name when generating scripts for several databases
  • CLI switches /inc and /exc incorrectly define project options
  • Wrong filtering for some objects in main grid

Changes:

  • Default location for ApexSQL Script user files changed to \My Documents\ApexSQL\ApexSQLScript

Release: 2005.10.0196
Date: September 20, 2007
Description: Medium fix release

Changes:

  • "Check all" column it is replaced with column filter in project wizard
  • Wild cards are changed to regular expressions in CLI
  • Removed server pick list from main toolbar as it is redundant
  • Loading of the objects metadata in a background mode to improve initial loading performance
  • Added a button to explorer's toolbar for "load selected database"
  • Improved data scripting performance

Fixes:

  • Problem with management of owner mapping for textual objects. Incorrect change and suppression owners
  • Bug with a filtration of SQL Server 2005 object types in a project wizard
  • Bug with change of the size of a project wizard on 120 dpi fonts
  • Problem with loading schemas for mapping in scripting wizard. Empty schemas grid in some cases
  • Bug with ordering Drop Statements Script of role membership
  • Bug with ordering services and routes in a structure script
  • Bug with ordering binding rules in a structure script
  • Some problems with overwrite project options in CLI
  • Problem with definition of dependent roles for other objects
  • Bug with ordering user types in a structure script. Incorrect definition of the user data types in relation to other objects
  • Bug with management of owner mapping for extended properties. Empty owner level for users extended properties
  • Bug with ordering DELETE statements in data mode
  • Bug with ordering INSERT statements in data mode
  • Bug with presence of an empty column in main grid dialogs

Release: 2005.09.0195
Date: July 10, 2007
Description: Medium fix release

Changes:

  • Package project converted on .Net 2.0
  • Script login creation on MS SQL 2005
  • Option "Explicitly Parse Database for Proper Script Creation Order" default value on FALSE
  • Wild cards are changed on regular expressions in filters

Fixes:

  • Problem with out of memory on generate packages
  • Bug with collection modified on reload large databases
  • Bug with script headers/footers to individual files
  • Some problems with ordering objects
  • Problem with defined depend objects
  • Problem with CPU resources occupying
  • Problem with owner mappings for some object types
  • Some problems with switches combine in CLI
  • Bug with generate large VB scripts
  • Bug with load app roles
  • Bug with script extended property on table primary key
  • Bug with script textual objects

Release: 2005.08.0193
Date: May 15, 2007
Description: Medium feature release

Fixes:

  • Added server explorer to main window
  • Ability to customize script headers
  • Ability to generate custom script footers
  • Ability to version generated scripts
  • Ability to treat Project Wizard's selection as exclude via Project Wizard's "Treat Object Selections as Exclude" option
  • Ability to treat main window's selection as exclude via Script Wizard's "Treat Object Selections as Exclude" option
  • Added "Script CREATE DATABASE" project level option
  • Added "Script Filegroups" project level option
  • Added "Explicitly Parse Database for Proper Script Creation Order" project level option
  • Added "Script Logins with Users" project level option
  • Added object filter for each object type to Project Wizard
  • Ability to customize database creation options
  • Added "Automatically Select Data table if Structure table has been selected" application level option
  • Ability to generate custom headers and footers for each object being scripted
  • Ability to manage grid columns
  • Added server picklist to main window
  • Ability to manage file extensions and custom type names in Options form
  • Ability to display grid's group by box
  • Support for CLR data types in data mode
  • Ability to script into Visual SourceSafe
  • Ability to script into SCC compliant systems
  • Ability to script objects from several databases at once
  • Multi column grouping for grids
  • Multi column sorting for grids
  • Implemented Script and Object Level Tags that can be used for script generation
  • Ability to include custom Pre- and Postprocessing scripts in generated scripts
  • Ability to specify project file in command line for GUI executable (like "ApexSQLScript.exe MyProject.axsc")
  • Added the following new CLI switches: Specific /i [ /includes ] : selection profile path (all objects if omitted) /ft:arg [ /filename_template ] : filename template /inc:arg [ /include ] : include specific objects in processing, objects can be specified via regular expressions TypeConstant:Expr ... TypeConstant:Expr ... /exc:arg [ /exclude ] : exclude specific objects from processing, objects can be specified via regular expressions TypeConstant:ObjectWildcard1:ObjectWildcar d2... TypeConstant:ObjectWildcard1:ObjectWildcar d2... /te [ /treat_list_as_exclude ] : treat selection profile/selection in a project file as exclude list Owner Options /owm [ /owner_manage ] : manage owners /owt:arg [ /owner_type ] : owner mapping type ("include" if omitted) exclude include change Arguments can not be combined. /owmp:arg [ /owner_map ] : owner map (example: "old;new dbo;test") Main Options /nth [ /no_transaction_handling ] : exclude transaction handling /nep [ /no_explicity_parse ] : no explicitly parse database for proper script creation order Script Processing /pre:arg [ /pre_script ] : preprocessing script file /pst:arg [ /post_script ] : postprocessing script file Structure General Options /sid [ /include_dependent ] : include dependent database objects /scdb [ /scr_create_db ] : script CREATE DATABASE /scf [ /scr_filegroups ] : script filegroups /scl [ /scr_logins ] : script logins with users /scn [ /no_scr_names ] : no script names /scc [ /scr_collations ] : script collation (table only) /nsca [ /no_scr_ansi_options ] : no script ANSI options /sct [ /scr_triggers ] : script triggers with parent table or view /scp [ /scr_permissions ] : script permissions /scd [ /scr_drops ] : script drops /nsce [ /no_scr_ex_properties ] : no script extended properties /nscu [ /no_scr_use_db ] : no script USE for database Create Database Options /dbd:arg [ /db_dir ] : database directory /dbld:arg [ /db_logdir ] : database log directory /dbc:arg [ /db_collation ] : database collation /dbrv:arg [ /db_recovery ] : database recovery mode ("simple" if omitted) simple full bulklogged Arguments can not be combined. /dbs:arg [ /db_size ] : database size (example: '1024 KB' Data General Options /ndio [ /no_data_identity_on ] : no set identity insert on /ddr [ /data_distinct ] : script distinct rows /ndd [ /no_data_delete ] : no add DELETE statements /drs:arg [ /data_rows ] : rows to script ("insert_all" if omitted) insert_all insert_update insert_new Arguments can not be combined. /dbr:arg [ /data_batch_rows ] : batch every N rows (no batches if omitted) /ndad [ /no_data_apply_date ] : no apply date format /ddf:arg [ /data_date_format ] : date format ("YYYYMMDD HH:NN:SS" if omitted) /ndtt [ /no_data_trim ] : no trim trailing spaces /ddac [ /data_disable_constraints ] : disable all triggers and constraints prior to loading data Script Format Options /nfc [ /no_format_comments ] : exclude comments /fof [ /format_obj_footer ] : include object footer /foh [ /format_obj_header ] : include object header /nfp [ /no_format_prints ] : exclude PRINT statements /fsf [ /format_scr_footer ] : include script footer /nfsh [ /no_format_scr_header ] : exclude script header /objf:arg [ /obj_footer ] : object footer template file /objh:arg [ /obj_header ] : object header template file /scrf:arg [ /script_footer ] : script footer template file /scrh:arg [ /script_header ] : script header template file Script Version Options /vmj:arg [ /version_major ] : major version number /vmr:arg [ /version_minor ] : minor version number /vbd:arg [ /version_build ] : build number Package Options /pkc [ /package_compression ] : use compression /pke:arg [ /package_error ] : package error handling ("ask" if omitted) abort ignore ask Arguments can not be combined. /pkaa:arg [ /package_author ] : package author /pkar:arg [ /package_copyright ] : package copyright /pkal:arg [ /package_legal ] : package legal /pkac:arg [ /package_comments ] : package comments Visual Source Safe Options /vss [ /source_safe ] : check in script to visual source safe /vssc:arg [ /vss_config ] : visual source safe config file path /vssu:arg [ /vss_user ] : visual source safe login (used with /vss_password option) /vssp:arg [ /vss_password ] : visual source safe password (used with /vss_user option) /vssj:arg [ /vss_project ] : visual source safe project path SourceGear Vault Options /vlt [ /vault ] : check in script to SorceGear Vault /vlts:arg [ /vault_server ] : SorceGear Vault server URL /vltr:arg [ /vault_repository ] : SorceGear Vault repository /vltu:arg [ /vault_user ] : SorceGear Vault login (used with /vault_password option) /vltp:arg [ /vault_password ] : SorceGear Vault password (used with /vault_user option) /vltj:arg [ /vault_project ] : SorceGear Vault project path Script Tags /sta:arg [ /tag_author ] : author tag /stc:arg [ /tag_company ] : company tag /stl:arg [ /tag_legal ] : legal tag /stw:arg [ /tag_workfile ] : workfile tag /str:arg [ /tag_revision ] : revision tag /stcl:arg [ /tag_log ] : change log tag /stc1:arg [ /tag_custom1 ] : custom1 tag /stc2:arg [ /tag_custom2 ] : custom2 tag /stc3:arg [ /tag_custom3 ] : custom3 tag Additional options: /cw:arg [ /console_width ] : specifies the width of console output /out:arg [ /out_to ] : redirects console output to specified file /af [ /argfile ] : argfile path Example of argfile: pubs home\sql2005

Changes:

  • Changed CLI switch name /ft [ /filter ] to /o [/object_types] and used bitwise set for object types
  • Changed CLI switch name /i [ /individual ] to /in [/individual]
  • CLI switch /database - several databases can be specified
  • Outlook bar made dockable
  • Parser is used no more when only data objects are being scripted

Fixes:

  • Problem with doubling switches in CLI
  • Problem with scripting several databases in CLI
  • Bug with saving projects
  • Bug with scripting data in CLI (apply filter)
  • Problem with script formatting
  • Problem with editing project databases in wizard
  • Problem with ordering fields of table in data mode
  • Problem with hide/view filter row in grids
  • Bug with scripting each object to an individual file in CLI
  • Bug with connecting to inaccessible MSSQL instance
  • Bug with changing options in package
  • Problem with package template name
  • Problem with suppress owners/schemas for stored procedures