README
     Progress(R) DataDirect(R)
     Progress(R) DataDirect(R) for JDBC(TM) for Oracle Eloqua(TM) Driver
     Release 6.0.0
     January 2019


***********************************************************************
Copyright (c) 1994-2019 Progress Software Corporation and/or its 
subsidiaries or affiliates. All Rights Reserved.

***********************************************************************


CONTENTS

Requirements
Installation directory
Changes since 6.0
Release 6.0 Features
Notes, known problems, and restrictions
Documentation
Installed files


     Requirements

Java SE 7 or higher must be installed and the JVM must be defined on your system
path.


     Installation directory

The default installation directory for the driver is:

* Windows:
  C:\Program Files\Progress\DataDirect\JDBC_60

* UNIX/Linux:
  /opt/Progress/DataDirect/JDBC_60
  Note: For UNIX/Linux, if you do not have access to "/opt", your user's
  directory should be used in place of this directory.


     Changes since 6.0

Certifications
--------------
* Certified with Oracle JDK 11
  Driver version 6.0.0.000080 (C0059.F000095.U000043) 

* Certified with OpenJDK 11
  Driver version 6.0.0.000080 (C0059.F000095.U000043) 

* Certified with OpenJDK 8 on Windows and Linux
  Driver version 6.0.0.000080 (C0059.F000095.U000043) 


     Release 6.0 Features

The driver supports standard supports SQL read-write access to Oracle Eloqua.
To support SQL access to Oracle Eloqua, the driver creates a relational map of
the Oracle Eloqua data model and translates SQL statements provided by the
application to Oracle Eloqua queries and web service calls. The driver
optimizes performance when executing joins by leveraging data relationships
among Oracle Eloqua objects to minimize the amount of data that needs to be
fetched over the network. The driver recognizes the relationships among
standard objects and custom objects and can access and update each.
Relationships among objects can be reported with JDBC the metadata methods.

* The driver supports all JDBC Core functions.

* The driver supports the core SQL-92 grammar.

* The driver supports connecting through a proxy server.

* The driver uses a combination of REST and BULK APIs for optimized fetch
  operations.
  
* The driver supports retrieving LONGVARCHAR data, using JDBC methods designed
  for Character Large Object (CLOB) data.

* The driver supports timeout functionality.

* The driver supports the following data types:
  - ARRAY         maps to VARCHAR
  - BOOLEAN       maps to BOOLEAN
  - DATETIME      maps to TIMESTAMP
  - DECIMAL       maps to DECIMAL
  - DURATION      maps to VARCHAR
  - INTEGER       maps to INTEGER
  - LARGETEXT     maps to LONGVARCHAR
  - LONG          maps to BIGINT
  - TEXT          maps to VARCHAR
  - URL           maps to VARCHAR


     Notes, known problems, and restrictions

The following are notes, known problems, and restrictions with the Oracle
Eloqua driver.

Update and Delete
-----------------
Only one record at a time can be updated or deleted. Therefore, the number of
APIs executed depends on the number of rows that get updated or deleted by
the query plus the number of API calls required to fetch the IDs for those
records.

Text field metadata
-------------------
Lengths of certain text fields are reported as higher than the actual lengths.

REST API issues
----------------
We are currently working with Oracle to resolve the following issues.

* AND operators that involve different columns are optimized. In other cases,
  the queries are only partially optimized.

* OR operators on the same column are optimized. In other cases, the queries
  are completely post-processed.
* The data store is not able to insert or update the NULL value to any field
  explicitly.

* The data store is unable to update few fields. They are always reported as
  NULL after update.

* Oracle Eloqua uses a double colon (::) as an internal delimiter for
  multivalued Select fields. Hence when a value with the semi-colon character
  (;) is inserted or updated into a multivalued Select field, the semicolon
  character gets converted into the double colon character.

* Query SELECT count (*) from template returns incorrect results.

* Oracle Eloqua APIs do not populate the correct values in CreatedBy and
  UpdatedBy fields. Instead of user names, they contain a Timestamp value.

* Only equality filters on id fields are optimized. All other filter
  conditions are not working correctly with Oracle Eloqua APIs and the data
  store is doing post-processing for such filters.

* Filters on Non-ID Integer fields and Boolean fields are not working
  correctly. Hence the driver needs to post-process all these queries.

* The data store does not distinguish between NULL and empty string.
  Therefore, null fields are often reported back as empty strings.

* Values with special characters such as curly braces ({,}), back slash (\),
  colon (:), slash star (/*) and star slash (*/) are not supported in where
  clause filter value.

Executing DataDirect shell script
---------------------------------
For UNIX/Linux users: If you receive an error message when executing any
DataDirect for JDBC shell script, make sure that the file has EXECUTE
permission. To do this, use the chmod command. For example, to grant EXECUTE
permission to the testforjdbc.sh file, change to the directory containing
testforjdbc.sh and enter: chmod +x testforjdbc.sh 

Scroll sensitive requests
-------------------------
When attempting to create an updatable, scroll-sensitive result set for a
query that contains an expression as one of the columns, the driver cannot
satisfy the scroll-sensitive request. The driver downgrades the type of the
result returned to scroll-insensitive.

ResultSet methods getTimestamp(), getDate(), and getTime()
----------------------------------------------------------
The ResultSet methods getTimestamp(), getDate(), and getTime() return
references to mutable objects. If the object reference returned from any of
these methods is modified, re-fetching the column using the same method
returns the modified value. The value is only modified in memory; the database
value is not modified.


     Documentation	 	 

PROGRESS DATADIRECT FOR JDBC FOR ORACLE ELOQUA DRIVER USER'S GUIDE
------------------------------------------------------------------
The USER'S GUIDE is available as an HTML help system and as a PDF.

* The HTML help system and PDF are installed in the OracleEloquaHelp
  subdirectory of your product installation directory.

* The HTML help system and the PDF are also available on this Progress
  DataDirect documentation web page:
  https://www.progress.com/documentation/datadirect-connectors


     Installed Files

When you extract the contents of the installation download package to your
installer directory, you will notice the following files that are required to
install the driver:

*  Windows:
   - PROGRESS_DATADIRECT_JDBC_INSTALL.exe
   - PROGRESS_DATADIRECT_JDBC_ELOQUA_6.0.0_INSTALL.iam.zip
   - PROGRESS_DATADIRECT_JDBC_COMMON_6.0.0_INSTALL.iam.zip
   - PROGRESS_DATADIRECT_JDBC_DOCUMENTATION_6.0.0_INSTALL.iam.zip

*  Non-Windows:
   - PROGRESS_DATADIRECT_JDBC_INSTALL.jar
   - PROGRESS_DATADIRECT_JDBC_ELOQUA_6.0.0_INSTALL.iam.zip
   - PROGRESS_DATADIRECT_JDBC_COMMON_6.0.0_INSTALL.iam.zip
   - PROGRESS_DATADIRECT_JDBC_DOCUMENTATION_6.0.0_INSTALL.iam.zip

When you install the driver, the installer creates the following directories and
files in the product installation directory in the default installation
directory or in an installation directory you specify, represented by
INSTALL_DIR.

INSTALL_DIR/:
-------------
LicenseTool.jar            Product license file manager

ddprocinfo.exe             Windows executable to start the Processor Information
                           Utility

ddprocinfo                 UNIX/Linux script to start the Processor Information
                           Utility


INSTALL_DIR/Examples/Connector/:
--------------------------------
ConnectorSample.ear        J2EE Application Enterprise Archive file containing
                           the ConnectorSample application 

connectorsample.htm        USING DATADIRECT CONNECT FOR JDBC RESOURCE ADAPTERS
                           document

graphics/*.*               Images referenced by the USING DATADIRECT CONNECT FOR
                           JDBC RESOURCE ADAPTERS document

src/ConnectorSample.jsp    Source for the JavaServer Page used to access the
                           ConnectorSample application

src/connectorsample/ConnectorSample.java     
                           Java source file defining the remote interface for
                           the ConnectorSample EJB

src/connectorsample/ConnectorSampleBean.java  
                           Java source file defining the home interface for the
                           ConnectorSample EJB

src/connectorsample/ConnectorSampleHome.java  
                           Java source file containing the implementation for
                           the ConnectorSample EJB


INSTALL_DIR/Examples/JNDI/:
---------------------------
JNDI_FILESYSTEM_Example.java
                           Example Java(TM) source file

JNDI_LDAP_Example.java     Example Java source file


INSTALL_DIR/Examples/OracleEloquaSamples/:
------------------------------------------
buildsamples.bat           Batch file to build the Eloqua example

buildsamples.sh            Shell script to build the Eloqua example

runeloquaconnectsample.bat
                           Batch file to run the Eloqua example

runeloquaconnectsample.sh
                           Shell script to run the Eloqua example

bin/com/ddtek/jdbc/samples/EloquaConnectSample.class
                           Java example class

bin/com/ddtek/jdbc/samples/SampleException.class
                           Java example class

src/com/ddtek/jdbc/samples/EloquaConnectSample.java
                           Java source example


INSTALL_DIR/help/: 
------------------
OracleEloquaHelp/index.html
                           HTML help system entry file

OracleEloquaHelp/eloquajdbcug.pdf
                           User's guide PDF file

OracleEloquaHelp/*         Support files and folders for the driver help system


INSTALL_DIR/install/: 
---------------------
.psc_dd_inst_reg.xml       Support file for the installation logs

logs/*.*                   Log file generated upon installing or uninstalling


INSTALL_DIR/jre/:
-----------------
*.*                        Windows only. Files associated with the driver.


INSTALL_DIR/lib/:
-----------------
eloqua.jar                 Oracle Eloqua Driver and DataSource classes


INSTALL_DIR/NOTICES/:
---------------------
JDBC for Oracle Eloqua v6.0 notices.txt
                           Third party agreement information


INSTALL_DIR/pool manager/:
--------------------------
pool.jar                   All DataDirect Connection Pool Manager classes


INSTALL_DIR/READMES/:
---------------------
JDBC for Oracle Eloqua v6.0 readme.txt
                           This file


INSTALL_DIR/testforjdbc/:
-------------------------
Config.txt                 Configuration file for DataDirect Test

ddlogging.properties       Logging properties file

testforjdbc.bat            Batch file to start DataDirect Test

testforjdbc.sh             Shell script to start DataDirect Test

lib/testforjdbc.jar        DataDirect Test classes


INSTALL_DIR/uninstall/:
-----------------------
.com.zerog.registry.xml    Support file for the uninstaller

.psc_dd_uninst_reg.xml     Support file for the uninstaller

InstallScript.iap_xml      Support file for the uninstaller

installvariables.properties
                           Support file for the Windows uninstaller

Uninstall_JDBC_60.exe      Windows uninstaller

Uninstall_JDBC_60.lax      Support file for the Windows uninstaller

uninstaller.jar            Java uninstaller

eloqua/*.*                 Support files for the uninstaller

resource/*.*               Resource files for the Windows uninstaller


January 2019
=============
End of README