skip to main content
DataDirect Connect XE Drivers : Salesforce Driver
  
Salesforce Driver
The Salesforce driver supports the standard SQL query language to fetch, insert, update, and delete data from Salesforce.com, Force.com, and Database.com.
Note: For the Salesforce Web Service API versions that are supported by the Salesforce driver, refer to the product matrix on the Progress DataDirect Web site: http://www.datadirect.com/products/jdbc/matrix/jdbcpublic.htm
You can also query the SYSTEM_REMOTE_SESSIONS in the INFORMATION_SCHEMA schema to get version information.
The driver translates the SQL statements provided by the application to Salesforce queries (SOQL) and Web service calls. The SQL statements supported by the driver are documented in Supported SQL Statements and Extensions (Salesforce Driver) in the DataDirect Connect Series for JDBC Reference.
The driver maps the Salesforce data model into a set of related relational tables. The mapping representation is stored in XML files external to the driver, which allows the sharing of map files among different client machines.
The driver uses a client-side data cache for improved performance. You can define rules that specify which data to cache on the client as well as when the cached data becomes invalid and needs to be refreshed (see Client-Side Caches for details).
The Salesforce driver can be used with industry standard tools such as:
*SAP Crystal Reports
*Hibernate
*Oracle WebLogic
*Spring for JDBC
Developers can leverage their existing SQL knowledge instead of having to learn the Salesforce query language and APIs.
The following figure shows the different components of an environment that uses the Salesforce driver to access Salesforce.
Image showing the components of a Salesforce environment
When an application connects to Salesforce through the driver, the driver establishes a Web service session with the Salesforce instance and a database session that opens an embedded database. The application can establish multiple sessions with Salesforce; however, additional Web service and database sessions are always opened in the ratio of one database session per Web service session. The database session maintains the object-to-relational table mapping. In addition, it maintains cached tables and local tables, as well as maintaining views. See Database Configuration File for more details.
Salesforce has certain standard objects that always exist, even if they do not contain anything. Salesforce administrators can also create custom objects using the Salesforce browser interface. The relationships among these objects are tabular, like those among the tables in a database. The Salesforce driver recognizes the relationships among both standard Salesforce objects and custom objects and can access and update both. The relationships among objects can be reported through the getExportedKeys(), getImportedKeys(), and getPrimaryKey() metadata methods. The driver is optimized to leverage Salesforce mechanisms for joining data, minimizing the amount of data that needs to be fetched over the network.
* Data Source and Driver Classes
* Version String Information
* Connection URL
* Connection Properties
* Performance Considerations
* Data Types
* Mapping Objects to Tables
* Client-Side Caches
* Catalog Tables
* Timeouts
* Views and Remote/Local Tables
* Using Identifiers
* Database Configuration File
* Mapping Objects to Tables
* Reports
* Connecting Through a Proxy Server
* Data Encryption
* SQL Escape Sequences
* Isolation Levels
* Using Scrollable Cursors
* JTA Support
* Large Object (LOB) Support
* Parameter Metadata Support
* ResultSet MetaData Support
* Rowset Support
* Auto-Generated Keys Support
* Configuring Bulk Load