There has been a lot of feedback on SMOscript 0.18, and some feature requests are now implemented.
The “script objects” command adds the options “-use” to add a USE [database] command to the generated file, and -fa option to append to existing files.
The “list database” command adds filters for the status of databases: system database, read-only, offline.
Instead of passing the login information using the switches -s, -d, -u, -p, you can now pass a connection string literal (such as used in web.config or app.config) using the -c switch.
New commands have been added as well:
- List object dependencies
- Find string literals
- Find strings
If an error or exception occurs, the ERRORLEVEL variable will be set (1 for parser errors, 2 to execution errors).
The complete help screen displays like this:
smoscript 0.19.4194.20191 (c) by devio.at 2008-2011 list and script databases and database objects. usage: smoscript [options (leading '-' or '/')] [command] connection options: -s server server name -d database database name -u username username (default: integrated authentication) -p password password (if -u is missing, password for sa) -c connection connection string (sets -s, -d, -u, -p) scripting options: -o [schema.]object object name -r generate DROP statements -i include IF NOT EXISTS statements -use generate USE [database] -f filename output to file -fa append to file if exists -F directory output to directory listing options: -l[x]a list [in]accessible databases -l[x]ro list databases [not] read-only -l[x]sys list [non-] system databases -ls list database status dependency options: -depth max. recursion depth -dxt exclude tables in result find options: -fx string exclude this string literal (multi) -fxs string exclude strings starting with this literal (multi) -fi find string case-insensitive -fc find string and display code output options: -A current ANSI codepage -O ASCII -T Unicode -U UTF8 commands: l list databases on server (implied by -s) list objects in database (implied by -s -d) s script all objects (implied by -s -d -F/-f) script single object (implied by -s -d -o) db list database properties dep list object dependencies (-o) fs find string literals f string find string in modules
The latest version of SMOscript is available for download here.
Really cool tool! Thanks for all your work!
can you add options to only script stored procedures, or tables, or views, or indexes, etc?
Thank you god ! 🙂
In case of an (scripting) error there is not shown any useful message. I’ve got only a generic “Error: scripting : Script failed for “