Skip to content

Key Features of JNetDirect Combine™

Combine™ is the first development, change management, and code deployment tool designed to automate the lifecycle of database projects and provide agile code deployment solutions from Development, to Quality Assurance (QA), and to Production. Combine™ is designed to scale as it allows developers to collaborate and work on DB project releases together, and then deploy the entire database code release by a click of a button on any number of databases and servers in parallel. Combine™ is therefore extremely useful for small, mid-size, and up to very large SQL server environments. Additional features in Combine™ include the ability to run queries and execute scripts on any number of databases and servers in parallel (patent-pending technology). Some of these novel features are highlighted below and are discussed throughout this document (for a complete list of features, please visit our Web site at

1. Collaborative code development, code packaging, one-click package deployment on all databases and servers – Using Combine™ (much like Visual Studio® for .Net developers), database developers can use source control and change management systems to collaborate and compose project releases together. When done, developers package all SQL scripts, queries, and any other SQL code components for their release into a single code package file. Each script in the package is associated with a group of target databases. The entire code package is then deployed by a click of a button onto any number of databases and servers, as the tool will automatically connect and execute each script on all the appropriate target databases in the group.

2. Easy transfer and agile package deployment between Dev, QA, and Production – Combine™ allows users to map groups of target databases in Development to a corresponding group of target databases in QA and in Production. Each group of target databases is identified by a user-configured name. When developers compose a code package, the name of the desired target database group is assigned to each script. Packages are composed and configured once by the developers. When the code package is ready, developers send the package file to QA. QA engineers can open the package using Combine™, review the content and settings of the package, and deploy the package on the target databases and servers in the QA environment without modifying the package settings. In addition, QA engineers can choose to deploy only parts of the package, or deploy code only on selected databases and servers. The same concept applies when sending packages to Production. Furthermore, deployment results from each environment can be saved into a single file, stored for auditing purposes, or sent back to the developers.

3. Run queries on multiple databases and servers in parallel – Users can run scripts and queries against a group of target databases on any number of servers in parallel, or against a single database. When running queries against multiple databases, Combine™ automatically connects and executes the queries on all target databases. Results returned from all databases are then formatted and displayed together.

4. Easy configuration and maintenance – Combine™ does not require a designated repository database. To make best use of the tool, users can configure the groups of target databases in Dev, QA, and Production by using a rich set of built-in configuration options and features. If users already maintain a repository database with information about their databases, the tool can be easily configured to retrieve the group settings by querying the repository (to find out more about the repository database, or to implement such a repository, please mail to JNetDirect support at In addition, once a single person configures the target groups, these settings can be exported and imported by other users.

5. With security in mind – Combine is designed to be secure. Developers, QA engineers, and Production DBAs only need to configure the sets of target databases in their own environment. Moreover, users can choose whether to store user-credentials using strong encryption techniques or to require credentials to be entered at each use.