Release Notes

Release Notes

New DBAmp Driver Engine improves SQL Server Stability and Driver Performance

The latest version of CData DBAmp contains a completely new driver engine from previous versions. One of the main advantages of the new engine is that DBAmp no longer runs “In Process” with the SQL Server process. DBAmp now runs as a Windows Service on the SQL Server machine. Moving the DBAmp driver engine into a separate process improves the overall stability of your SQL Server environment.

This new driver engine architecture changes the way DBAmp linked servers are configured. Instead of connecting directly to the DBAmp OLE-DB Provider, customers must now use the Microsoft OLE DB Driver for SQL Server as the Provider. The CData DBAmp Windows Service “listens” on a network port locally for requests. DBAmp Linked Servers enter this port into the Data Source of the linked server.

The CData DBAmp Windows Service is automatically configured as a service that runs continuously when you install the product. The DBAmp Configuration Program now provides a console to start and stop the service. You can also use the Windows Service Manager to start and stop the service.

In addition, the new CData DBAmp driver engine improves performance in several key areas. Performance with joins between Salesforce objects when using standard SQL SELECT statements has improved, replacing the need to use OPENQUERY SOQL alternatives.

Functional Changes

Prior to upgrading to the new version of DBAmp, you should review the follow major changes of the new version. Note that there are minor changes that are not listed here. Our recommendation is that you upgrade DBAmp on a Test or Development environment and perform any needed regression testing of your DBAmp environment PRIOR to upgrading your production SQL Server environments.

Ellipsis (…) Shorthand for Object Names No Longer Supported

The syntax of DBAmp four part object names has changed. The new version requires a catalog of [CData] and a schema of [Salesforce]. For example:

Old version of DBAmp:

 Select * from SFLC...Contact 

New version of DBAmp:

 Select * from SFLC.CData.Salesforce.Contact 

Metadata Changes

The system tables sys_sfsession, sys_sfobjects and sys_sffields, and sys_sfpicklists have been removed. See the DBAmp documentation for alternatives when working with metadata.

DBAmp Configuration Settings Changes

Many of the DBAmp Configuration Settings now have new names. See the DBAmp documentation for details on these changes to the DBAmp Configuration Program Settings.

ConvertCurrency and ToLabel No Longer Supported

The global ConvertCurrency and ToLabel settings have been removed. As a workaround, construct SELECT with OPENQUERY that specifically uses the function. For example:

  SELECT * FROM openquery(salesforce,  

  'Select Id, convertcurrency(annualrevenue), ToLabel(type) 26 from Account')  

Documentation is Now in HTML Format

The DBAmp documentation is now available in HTML format instead of a PDF. You can access the DBAmp HTML Help from the Help menu option of the DBAmp Configuration Program.

Deprecated Functionality and Stored Procedures

The MigrateAmp functionality has been completely removed from the new version.

The DBAmp Client functionality has been completely removed from the new version.

The following DBAmp stored procedures have been removed from the new version:

  • SF_CreateKeys

  • SF_DropKeys

  • SF_ColCompare

  • SF_MigrateBuilder

  • SF_MigrateGraphML

Using DBAmp with SSIS has been removed. We recommend you use the CData SSIS product.

CData DBAmp no longer uses the same serial number structure as the older version of DBAmp.

Data Type Name Changes

The table below lists Salesforce field types, their former SQL Server data type names, and the new SQL Server data types.

Salesforce Field Type SQL Server Data Type (Current) SQL Server Data Type (New)
Lookup Relationship nchar(18) nvarchar(18)
Master-detail relationship nchar(18) nvarchar(18)
Checkbox bit bit
Currency decimal(18, 0) numeric(18, 0)
Date datetime2(7) datetime2(7)
Datetime datetime2(7) datetime2(7)
Email nvarchar(80) nvarchar(80)
Geolocation decimal(18, 2) float
Number decimal(18, 0) float
Percent decimal(18, 2) float
Phone nvarchar(40) nvarchar(40)
Picklist nvarchar(255) nvarchar(255)
Picklist (multi-select) ntext or nvarchar(max) nvarchar(max)
Text nvarchar(length) nvarchar(length)
Text Area nvarchar(255) nvarchar(255)
Text Area (Long) nvarchar(length) or nvarchar(max) or ntext nvarchar(length) or nvarchar(max)
Text Area (Rich) nvarchar(length) or nvarchar(max) or ntext nvarchar(length) or nvarchar(max)
Text nvarchar(length) nvarchar(length)
URL nvarchar(length) nvarchar(length)
Binary varbinary(max) varbinary(max)
Time nvarchar(40) time(7) or nvarchar(40)

Footnotes for New Version:

  1. For Text Area (Long) and Text Area (Rich) the default is nvarchar(length). If length of field is greater than the MinimumLongSize setting, field data type goes to nvarchar(max).

  2. By default, DBAmp does not download binary blob data.

Supported OS and SQL Server Version

SQL 2000 and Windows XP are no longer supported. See Prequisites for a list of supported software.

Changes Relevant to v5.0.1 or Later

  • DBAmp now uses bit datatype instead of varchar(5) for all boolean fields.

  • All fields are now nullable, except for the ID field on local tables.

Make sure all downstream processes that use the local tables are compatible with the above changes.