Screenshot Preview

Assembly Manager V1.0 launched

Total transparency and control over assemblies in SQL Server.

Generated Scripts in Assembly Manager.

Generated Scripts in Assembly Manager.

Assembly Manager is a Windows application for Microsoft SQL database administrators and developers that greatly simplifies the task of managing CLR (Common Language Runtime) assemblies in a live database environment. CLR integration - first released with SQL 2005 - offers a rich, powerful and safe way to extend native SQL functionality that delivers high performance and flexibility compared with conventional scripted T-SQL functions and other objects. However, the native administration capabilities provided within SQL Server Management Studio make it difficult to manage and control significant numbers of CLR-defined objects across multiple databases and servers. Assembly Manager provides a much higher degree of visibility and control - making it very easy to add and remove CLR-defined objects, perform upgrades, maintain consistency between databases, enforce policy, implement and manage security schema, generate change and rollback scripts and so on.

Features

Assembly Manager is ideal for database administrators, it gives immediate visibility and control over which assemblies and assembly-defined-objects are installed on which databases, whether any of the assemblies are marked with EXTERNAL or UNSAFE permission sets, and which security schema are in use. It substantially reduces the effort required to carry out changes, allows changes to be scripted out and inspected before execution, and provides a roll-back mechanism for changes so that they can be backed out. It also provides non-administrators with the ability to safely define the changes required in the form of a series of change actions, and pass them over to you in an actions file that can be loaded up to allow you to see the effect the changes will have before they are applied.

For database developers and solutions architects TotallySQL Assembly Manager makes the use of MS SQL's powerful CLR integration features a viable and worthwhile option for your organization, by taking away the headache associated with CLR assembly administration. It provides total visibility and control over the CLR assemblies and the functions, aggregates, stored procedures, types and triggers that are defined in them. By just pointing and clicking you can easily choose which features to install in which databases, and you can copy assemblies and programming objects between databases by simply dragging and dropping or cutting and pasting. You can define change scripts and hand them over to your DBA for review and implementation - or if you have the appropriate permissions you can apply the changes yourself.

Assembly Manager benefits

  • 100% GUI-based management interface - all tasks can be accomplished with simple point & click operations
  • Fully client-based - there is nothing to install on the servers that are being managed
  • Full support for all CLR object types: scalar & table-valued functions, procedures, aggregates, types and triggers
  • Import & export assembly files between SQL servers and disk-based storage
  • Directly copy or move assemblies between databases on the same or different servers
  • Drag & drop or cut, copy & paste assemblies and their child objects between databases and to/from disk
  • Drop an assembly and all its child objects with one click - no need to remove them one by one
  • Choose which objects from an assembly are to be installed within SQL by clicking checkboxes
  • Give objects any name and any schema within SQL - they do not have to match the names in the assembly
  • Parameter defaults can be set for functions and stored procedures
  • Perform bulk schema changes over multiple assemblies and objects in one go
  • View all objects inside an assembly that can be used by SQL and their internal class and method names
  • Upgrade assemblies without having to drop them (so no need to drop dependent objects first)
  • Full support for CLR triggers: clone them for multiple targets and select multiple trigger events
  • Manage server & database settings needed for CLR operation (e.g. CLR ENABLED, TRUSTWORTHY etc.)
  • Auto-create asymmetric keys and logins for code authentication with EXTERNAL or UNSAFE assemblies
  • Full inter-assembly dependency checking - e.g. auto-add referenced assemblies; auto-drop dependent assemblies
  • Maintain & share libraries of assemblies that can be used to enable a cookie-cutter installation approach
  • Deferred execution: make multiple pending changes and see their effect before applying them live
  • Smart execution ordering for actions - avoids clashes e.g. by installing types before functions that use them
  • Save and  load change actions as predefined change sequences for later execution (e.g. by DBA).
  • For every action a rollback is automatically created: any sequence of changes can be rolled back in one go
  • Roll back action sequences can be saved to disk for later use if needed
  • Detailed error messages from SQL displayed when actions cannot complete (e.g. because of permissions)
  • Create, view & execute T-SQL change scripts with Assembly Manager or launch them in Management Studio
  • Add or remove associated files that can be used as resource files from within the assembly code
  • Login credentials for multiple servers can be securely cached for rapid start-up
  • 'Spoofs' Visual Studio so assemblies deployed with Assembly Manager can be deployed over using VS

About TotallySQL

TotallySQL are specialists in application development centered around Microsoft SQL Server, and in particular in creating CLR-based function libraries that enable advanced processing to be carried out within the database itself. They provide a range of off-the-shelf function libraries and can also build bespoke libraries to your specification. They also provide a range of database and data management services - including database design, ETL services, data cleansing and data migration.